Для настольных приложений, подобных вашему, передача данных в формате JSON не имеет большого смысла. Его основное назначение - облегчить доступ из веб-браузера. Хотя они служат разным целям, то же самое можно сказать и об ОТДЫХЕ.
По моему мнению, для взаимодействия двух приложений .NET наиболее подходящим является WCF. Хотя для многих людей ASMX легче подходит для их мышления (просто украсьте что-нибудь с помощью WebMethodAttribute, и все готово), я бы не рекомендовал его из-за отсутствия приличной авторизации / аутентификации / шифрования (выберите любой) и способа, которым его Microsoft, похоже, больше не поощряет использование.
Кстати, вы также можете взглянуть на WSCF - контракт на веб-сервисы сначала . К сожалению, теперь у вас есть еще больше вариантов на выбор. :)