I would like to write a c# server that will act roughly as a chat server ( clients are connected for a while, same message could be dispatched to many clients , .... ).
I was wondering if you can give me some hints to start (what kind of architecture ( threads by clients / iocp / asynchronous / ...) that will allow to scale well ( should be able to handle thousands of simultaneous connections ) ).