Я хотел бы знать, как они это делают или как лучше всего это сделать.
Обе стороны сервера и клиента находятся под вопросом.
После завершения моего игрового сайта следующим этапом будет предоставление многопользовательских игр в Silverlight.
На мой взгляд, самый простой способ - это открыть один сокет на каждое окно / игру, но может быть более надежным иметь одно подключение сокета для обработки всех окон / игр, открытых клиентом.
Я не прав?