+2  Q: 

MSMQ monitoring

Is there anything which can help with msmq monitoring? I'd like to get some event/monit when a message appears in queue and the same on leave.

+3  A: 

Check out the Windows Management Performance counters.

If you look in your Administrative Tools and find "Performance Counters", you will be able to dig through there and find detailed metrics on what is happening on each message queue. This can also work for remote servers.

Should you wish to create some sort of automation around the monitoring, check out the .NET libraries for reading these performance counters. There is a very rich and comprehensive API which should give you everything you need!