If I were to have the TcpClient as the value what would a good value for the key be? IP address? Static counter variable incremented for each connection?
Is there not a better way to find the IP address of a tcp client rather than this?
client.Client.RemoteEndPoint.ToString()
What do most people usually use?
To identify a client see http://blogs.msdn.com/b/mariya/archive/2006/06/19/636437.aspx .
As key for the Dictionary I would use
BTW: if your server is multi-threaded I would strongly recommend using a
ConcurrentDictionary.