Ну асинхронность нужна на c# у сервера, что бы эффективно обрабатывать несколько клиентов. Я пытался сюда выложить код, но так много почему то форум не принимает. В несколько сообщений тоже... А так, тут статья должна была быть)
Если интересует обычный асинхронный TCP или UDP сервер на C# - могу помочь в этом направлении. Что касается веб сокетов, то есть хорошее решение Vtortola WebSocket.