Microsoft Message Queuing (aka MSMQ) is a kind of messaging protocol, where applications can communicate asynchronous with each other. This can be done in a local Network, but also over the Internet.
The Advantage of using MSMQ, is that data will not be lost if something should go wrong with the applications. This is because MSMQ uses asynchronous queues, which means that messages will be queued in case of an applications failure.
Where will MSMQs be used? Well typically they will be used in order applications where real time answers are not required, but where near real time or longer response time is ok 😉
A typical example could be Web Forms, which sends orders into a system for order processing.