Model-View-ViewModel - это шаблон разделения пользовательского интерфейса. В нем конкретно не говорится о роли сервисов в вашем приложении. Но в целом ваша «Модель», скорее всего, будет нуждаться в постоянстве, которая должна будет перейти из уровня пользовательского интерфейса в уровень обслуживания, и WCF обеспечивает хороший транспорт для этого.
Используя инфраструктуру внедрения зависимостей (которая является обычной в MVVM), вы можете зарегистрировать свои интерфейсы службы WCF в контейнере, чтобы вы могли работать с интерфейсами, а не напрямую с прокси-клиентами WCF.
Что касается услуг передачи данных WCF или услуг RIA, я не знаю, что жюри все еще не решено. Службы данных WCF выпущены, службы RIA - нет. RIA имеет тенденцию стирать грани между тем, что является клиентом и тем, что является сервером. Это может быть как хорошо, так и плохо. Это решает много проблем с дублированными правилами валидации и тому подобным, но я лично немного нервничаю из-за такой тесной связи клиента и сервера.