I have posted to aid others in diagnosing problem with SSL/TLS connections to superserver port from .NET client executable.
The cache instance this appeared on is quite old - 2011 - so I do not know if Intersystems have added a better error message in a later version
The actual fault was due to the certificate in the %SuperServer SSL/TLS configuration having expired.
The unhelpful message that appeared in the .NET client included the following partial stack trace.
*** CacheException..ctor: (12:05:09:546) [ConnID= 34822912] [SvrJob=Unknown] [ThreadID=9]
[CacheProvider] Communication link failure: System.ArgumentNullException; Value cannot be null.
NativeError: 461 State: 08S01
InnerException StackTrace:
at System.Threading.Monitor.Enter(Object obj)
at InterSystems.Data.CacheClient.SysList.dumpData(Stream outStream, Int32 count, LogFileStream logFile)
at InterSystems.Data.CacheClient.OutStream.send(Int32 count)
at InterSystems.Data.CacheClient.CacheADOConnection.Login()
at InterSystems.Data.CacheClient.CachePool.CreateNewPooledConnection(CacheADOConnection conn)