MSMQ è un servizio veramente maturo. Se dovete gestire una comunicazione asincrona, allora MSMQ è lo strumento più adatto. Dopo questa premessa, il dubbio che sorge ad ogni developer è quello sul tipo di coda da creare: pubblica o privata ?

E' bene sapere che dal punto di vista della messaggistica (supporto alle transazioni, sicurezza, journaling, quota, ecc.) non vi è alcuna differenza fra le due. Ma allora quando usare una o l'altra ?

Il vantaggio di una coda pubblica è fondamentalmente l'integrazione con l'Active Directory che ne permette la localizzazione dinamica e la gestione centralizzata. Ciò comporta anche degli svantaggi legati alle perfomance (la code deve interrogare l'AD) ed al setup (la code è usabile solamente quando ne sono a conoscenza tutti i domain controllers della foresta AD).

Il vantaggio di una coda privata è la sua immediatezza (non dipende dall'AD) ed è più performane di una pubblica. Lo svantaggio è che non può essere amministrata da remoto e la sua localizzazione non può essere dinamica.