Jonathan,
Lo que tiene que ayudarte a decidir si quieres una aplicación Web, una de Servidor o una de Escritorio ha de ser el tipo de interacción con el usuario que te hace falta, y que no nos queda claro.
Lo que te puede ayudar más, en mi opinión, es pensar en una solución que te permita enviar esos XML de diferentes protocolos, y que sea totalmente desacoplada. Si consigues hacer un diseño que te permita hacer pruebas, y que esté pensado para la explotación (en detectar y rastrear los errores que se produzcan, con logging y lo que necesites), si consigues todo eso, decidir si se trata de aplicación de escritorio, Web o de servidor, será sólo un detalle.
Ahora bien, para los cientos de miles de mensajes, si supone un coste considerable y hay riesgo de que se pierdan, es muy probable que el uso de colas te ayude mucho. Si vas a usar colas, con JMS, te vendrá bien usar MDBs, y eso supone EJBs.
Tendrás que revisar los requerimientos, los usuarios, qué es lo que necesitas y qué tecnologías puedes usar. Lo que sí que estoy totalmente de acuerdo contigo es que tiene más sentido tener una aplicación única para todos los protocolos.
Espero que te ayude,