And now what? previous: A complete and utter waste of my time next: How did I end in this position? It looks like the entire MSMQ .NET stack is riddled with threading bugs. At least if you think about using the async methods such as BeginPeek. Nasty! Comments 01/27/2009 06:08 PM by J have you ever thought about joining Microsoft as a tester? :) 01/27/2009 06:43 PM by Kelly Stuard @J - haha - second that! 01/27/2009 06:55 PM by shawn are you using PeekCompleted? i use this pattern for peeks and reads and it may be why i haven't encountered the set of problems you have. msdn.microsoft.com/.../...queue.peekcompleted.aspx 01/27/2009 07:12 PM by Ayende Rahien shawn, No, I am using the delegate passed to the async method 01/27/2009 08:03 PM by Justin Etheredge If you are going to make a statement like this, then shouldn't you at least show the situation under which the error occurred? From what you have shown us, it is hard to ascertain if your claims are indeed true, or you are doing something wrong and just blaming it on the .net MSMQ apis. 01/27/2009 08:16 PM by Ayende Rahien Justin, Null Reference is almost always a bug. In this case, I am access the AppSpecific property on a message, and it throws this error. This is caused because of a bug in certain scenarios in which even though the queue is set to accept AppSpecific, it doesn't 01/27/2009 08:21 PM by James An assert failing in production code means that some invariant somewhere is no longer true, and that the author of the code considered such a situation a bug. Therefore Oren's statement is valid. 01/27/2009 08:22 PM by Justin Etheredge @Ayende Thanks for the clarification. I didn't doubt that it was a bug on their part, I just like seeing what caused them so that I know in the future where the dragons may be. 01/27/2009 08:24 PM by Ayende Rahien No, that is actually not an assert that is failing. The assert is in my code. The problem is that NRE. 01/27/2009 10:05 PM by Mr Anonymous choke JMS.... :-P 01/27/2009 10:11 PM by Mr_Me @Mr Anonymous Hey no fair - you stole my handle. 01/27/2009 11:58 PM by Jeremy Gray Though context is and always would be helpful (or at least more informative ;) ) I'm with Oren on this one. NRE == bug. 02/03/2009 05:52 PM by Bruno Martínez You should stop relying in ObjectDisposedException and not touch an object after disposing it. Think of ObjectDisposedException as a debuging aide. Comments have been closed on this topic.