There is a slight functional difference between public and private queues, except that MSMQ publishes information about public queues in Active Directory (AD).
I never did this myself, but it seems that if you know the full path to the private queue, you can access it from another server:
Private Queues
Private queues are queues that are not published to Active Directory and are displayed only on the local computer that contains them. Private queues have the following functions:
Message queue logs closed queues locally, storing the queue description in LQS (local queue storage) on the local computer. In MSMQ 2.0 and Message Queuing 3.0, the default location is% WINDIR% \ system32 \ MSMQ \ storage \ LQ codes. Note that the description of each public queue created on the local computer is also stored locally in a separate file in the LQS folder.
Private queues are registered on the local computer, and not in the service directory, and, as a rule, cannot be located in another application message queue.
Private queues are available only to Message Queuing applications that know the full path name, format name or private format of the queue name, as follows:
Path Name :. NameComputer \ private $ \ QueueName
The path name on the local computer is: \ Private $ \ QueueName.
Direct format name :: DIRECT = ComputerAddress \ PRIVATE $ \ PrivateQueueName.
Private format name: PRIVATE = ComputerGUID \ QueueNumber.
For more information about path names and format names, see Queue Names.
Private queues have the advantage that there is no directory service overhead, it is faster to create them, there is no latency in access to them, and there is no replication overhead.
Private queues are independent of the directory service and therefore can be created and deleted when the directory service is down. This is useful for battery life.
One of the ways that private queues can be exposed to other applications is by setting the message property. To distribute the location of the private queue, the application can send the private queue name format as a property of the message reply queue.