Я понимаю, что вы говорите о программах на одном компьютере, но мне всегда нравилась идея передачи сообщений в XML через HTTP.
Ваш сервер может быть веб-сервером, готовым принять полезную нагрузку XML. Ваш клиент может отправлять HTTP-сообщения с XML в теле и получать HTTP-ответ с XML в нем.
Одна из причин, по которой мне это нравится, заключается в том, что HTTP является настолько широко используемым протоколом, что его легко принимать или создавать запросы HTTP POST или GET на любом языке (в случае, если вы решите изменить язык клиента или сервера в будущем ). HTTP и XML существуют уже давно, поэтому я думаю, что они здесь, чтобы остаться.
Еще одна причина, по которой мне нравится это то, что ваш сервер может использоваться и другими клиентами, если они знают HTTP и XML.