I have MSMQ running on a two-node Windows 2003 cluster. When I try to send transactional messages to a queue on a Windows 2008 server in another forest, the messages get stuck in the cluster's outgoing queue. The outgoing queue says "waiting to connect" and has the destination server's IP for the next hop.
I can send messages from the cluster to Windows 2008 servers in the same forest. I can also send messages from either node of the cluster to Windows 2008 servers in the same forest and the other forest. I can send messages from a Windows 2008 server in the other forest back to the cluster.
Edit: Running a network capture on the servers shows that the Windows 2008 server is receiving packets from the cluster, but they're not being passed up the layers to the MSMQ process.