В WCF нет ничего такого, что позволяло бы вам обрабатывать это явно, поэтому вам все равно придется делать всю работу самостоятельно.
Хотя ваша служба может обрабатывать запросы от MSMQ, прослушиватели MSMQ в WCF будут выбирать и обрабатывать сообщения как можно скорее; вы не можете настроить их так, чтобы они обрабатывали сообщения только каждые X секунд (вы могли бы подделать их, если бы использовали правильные инструменты, но мне кажется, это было бы не так уж и здорово).
Один из вариантов, если ваша задержка между обработкой запросов не очень мала, это использовать промежуточную очередь для хранения ожидающих запросов. То есть все, что отправляет реальные запросы, записывает их в очередь, которую никто непосредственно не слушает (очередь A), в то время как ваша служба WCF прослушивает другую очередь (очередь B). Затем, есть что-то еще (может быть так же просто, как скрипт, запускаемый из планировщика задач), которое запускается один раз каждые X секунд / минут / что угодно и перемещает всего 1 сообщение из очереди A в очередь B, таким образом запуская фактическую службу WCF. 1005 *