Основное преимущество : Как только вы преодолеете кривую обучения, WCF сравнительно легко обнаружит и использует программные компоненты. Т.е., учитывая, что компонент включает функциональность в контракт на обслуживание WCF, разработчик может представить этот же компонент в процессе, через процессы в одном блоке, через интрасеть Windows или через Интернет, просто изменив информацию о хостах и конфигурации. Аналогичным образом клиенты указанного компонента могут легко использовать его в любом из этих сценариев.
Основной недостаток : кривая обучения. Многим разработчикам WCF кажется очень пугающим, когда они впервые начинают изучать его. Я сделал несколько неудачных попыток попасть в «Программирование служб WCF» Ювала Лоуи. Хотя я обнаружил, что понимание пришло быстро, как только я начал создавать и потреблять компоненты.
Главное, что нужно помнить , - это то, что WCF позволяет вам написать хороший функциональный код и превратить его в компонент, который затем можно относительно легко использовать практически в любом месте, практически с любой степенью безопасности, надежности и долговечность.
По сравнению с тем, что мы были вынуждены использовать ранее, WCF - это fantasitc!