Некоторые проблемы включают в себя то, как вы хотите, чтобы издатель вел себя, когда данный подписывающийся клиент не работает - хотите ли вы, чтобы это сообщение было доступно, когда подписчик возвращается? Если это так, то между ними необходим какой-то длительный обмен сообщениями - например, MSMQ.
Ваш вопрос об уведомлении одного клиента, является ли это результатом запроса, отправленного этим клиентом? Если это так, то стандартные вызовы NServiceBus в форме Bus.Reply сделают это за вас. При использовании WCF, если ответ должен быть асинхронным, вам необходимо использовать контракты обратного вызова.
NServiceBus может делать все, что вы описали, и имеет возможность автоматически устанавливать MSMQ и создавать очереди, что значительно упрощает развертывание на стороне клиента.
У вас также есть возможность с NServiceBus выставлять сообщения через WCF, чтобы вы могли поддерживать клиентов, не являющихся NServiceBus, если вам это необходимо. Он также имеет собственный http-шлюз и схемы XSD, которые позволяют клиентам на платформах, отличных от Windows, взаимодействовать даже без использования WCF.
Надеюсь, что отвечает на ваши вопросы.