I\'m currently doing analysis and design for a new message bus architecture in my company. I have tried MSMQ to do something like this in the past and it works well and was
the Apache ActiveMQ (open source) message broker also has a .NET client:
http://activemq.apache.org
Together with Apache Camel and Apache ServiceMix, enterprise integration patterns and enterprise service bus systems are easy to set up.
IMHO, with so many good, flexible and proven bus architectures to choose from (NServiceBus, Mass Transit, Rhino Service Bus), implementing your own would be a big NIH. It's not a trivial task.
Udi describes it very well in this message.
Sorry, coming very late to this, but hopefully my answer is useful for MSMQ 4.0 users (but not necessarily useful to users of later versions).
Both WCF Queuing and System.Messaging are wrappers over the MSMQ APIs. WCF is more sophisticated and complex, but does have the following benefits: