When you try to connect from managed client library (3.5, not 4.0) to service using an url like "ws://mydnshostname:port/websocket" instead of using IP... it fails
Looks like your code or a dependency is downcasting somewhere to base EndPoint instead of using the existing DnsEndPoint class. When accessing m_RemoteEndPoint.AddressFamily from EndPoint an MethodNotImplemented exception is thrown.
It works well with any IP Address in uri like "ws://10.10.10.10:port/websocket"
public void Connect()
{
m_ReceiveAsyncEventArgs.RemoteEndPoint = m_RemoteEndPoint;
if NET35
m_Socket = new Socket(m_RemoteEndPoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp); // <<<----- HERE IS THE PROBLEM (AddressFamily)
m_Socket.ConnectAsync(m_ReceiveAsyncEventArgs);
else
if (!Socket.ConnectAsync(SocketType.Stream, ProtocolType.Tcp, m_ReceiveAsyncEventArgs))
ProcessConnect(m_ReceiveAsyncEventArgs);
endif