Этот ответ основан на статье, которой больше не существует:
Краткое содержание статьи:
"По сути, WCF - это сервисный уровень, который позволяет создавать приложения, которые могут взаимодействовать с использованием различных механизмов связи. С его помощью вы можете общаться с использованием одноранговой сети, именованных каналов, веб-служб и т. Д.
Вы не можете сравнивать их, потому что WCF - это платформа для создания совместимых приложений. Если вам нравится, вы можете думать об этом как о активаторе SOA. Что это значит?
Ну, WCF соответствует чему-то, известному как ABC, где A - это адрес службы, с которой вы хотите установить связь, B - это привязка, а C - контракт. Это важно, потому что можно изменить привязку без необходимости изменения кода. Контракт гораздо более мощный, потому что он заставляет отделить контракт от реализации. Это означает, что контракт определен в интерфейсе, и есть конкретная реализация, к которой привязан потребитель, использующий ту же идею контракта. Модель данных удалена. "
... позже ...
"должен использовать WCF, когда нам нужно взаимодействовать с другими коммуникационными технологиями (например, .g. Peer to Peer, именованные каналы), а не с веб-службой"