Обычные методы очереди не подойдут для вашего случая, потому что, ну, это очередь, так что первым пришел, первым обслужен. У вас есть несколько вариантов.
Первый вариант - публикация сервера в двух разных очередях, по одной для каждого клиентского приложения. Тогда каждый клиент будет использовать методы BeginReceive / ReceiveCompleted. Это довольно просто, но это может быть проблемой, если вы хотите масштабировать до множества клиентских приложений. Это то, что я сделал, когда у меня было несколько нисходящих систем, на которые мне нужно было отправлять сообщения.
В этом блоге MSDN предлагается, чтобы вы могли присоединить к своей очереди многоадресный адрес PGM. Затем клиенты подписываются на группу многоадресной рассылки и получают сообщения таким образом. У меня нет никакого опыта с этим, но похоже, что вы теряете транзакционность, что может быть проблемой.