Просто настройте свой сервер, чтобы включить имя каждого клиента вместе с его объектом Socket в список, чтобы в списке хранились экземпляры структуры / класса, а не только сами сокеты.
Когда клиент подключается,требует, чтобы он отправлял уникальное имя на сервер, и чтобы сервер сохранял это имя в списке вместе с сокетом этого клиента (если имя уже существует в списке, отключите старый или новый клиент по вашему выбору).
Затем, всякий раз, когда сервер получает сообщение с именем получателя, он может найти это имя в списке и переслать сообщение соответствующему клиентскому сокету.