MessageQueue.Send() crashes if called by multiple threads

I found this bug which was caused in our REST-API at RemoteX which was a bit strange.

It was an InvalidCastException being thrown inside Microsofts MSMQ libraries. So a quick Google found this following reported issue:

https://connect.microsoft.com/VisualStudio/feedback/details/94943/messagequeue-send-crashes-if-called-by-multiple-threads

In short, in a threaded environment never send arbitrary objects over an MSMQ channel, instead send Messages with the content.