Как организовать обмен данными между двумя программами локально на одном ПК?
Способы взаимодействия можно организовать через сокеты, общую память, файлы, именованые каналы, rpc и тп.
Я бы организовал через сокеты или общую память (shared memory)
WCF Windows Communication Foundation
Video - Урок 1. Введение в Windows Communication Foundatio...
Эта технология позволит вам общаться внутри 1 компьютера (pipe каналы), или по сети, для программ на любых языках.
Простым языком - это супер обертка от Microsoft вместо велосипедов которые люди были вынуждены делать до появления WCF. Она абстрагирует вас от проблем взаимодействия, их контроля, безопасности, очереди, синхронизации.
Пример - не надо париться с сокетами, просто сделайте WCF используя tcp адрес и байдинг, все остальное будет сделано за вас автоматически.