А в чем проблема 10 000 соединений? TcpListener например никак не ограничивает количество соединений (только если явно не указать это в методе Start). Узким местом является канал и железо сервера.
Да, действительно неправильно понял. Исправляюсь - в статье www.hanselman.com/blog/AsynchronousScalableWebAppl... Вы возможно найдете, то что Вам нужно. В комментариях Скотт Хансельман утверждает, что лично видел, как на таком решения сервер принимает сотни тысяч подключений.