I want to implement bulk availability checking of .co.za domain names as accurately as possible by checking for the existence of SOA
This would be very easy using JH Software's DNS Client Library for .NET:
var Response = JHSoftware.DnsClient.Lookup("example.com", JHSoftware.DnsClient.RecordType.SOA);
It also supports BeginLookup / EndLookup methods for asynchronous lookups.
BeginLookup
EndLookup