В зависимости от того, планируете ли вы полагаться на централизованный сервер или нет, у вас есть варианты:
1) Нет сервера. Когда клиент подключается к сети, он передает свои идентификационные данные, прося других клиентов отправить их.
2) Централизованный сервер: подключается новый клиент, он регистрируется на сервере и загружает список клиентов. Затем каждый клиент уведомляется (либо посредством опроса, дуплексного контракта при использовании WCF, либо через базовое соединение с сокетом) о новом клиенте.
Первая версия будет основана на сокетах UDP. Обратите внимание, что это не работает вне локальной сети, так как я считаю, что эти пакеты не будут проходить через маршрутизаторы. Это также, вероятно, плохой дизайн, потому что большое количество клиентов просто заполонит сеть пакетами. Но эй, этого может быть достаточно для тебя.
Также WCF имеет поддержку одноранговой сети, это может быть интересно для вас. Вот статья об этом.