Это два совершенно разных технологии:
Entity Framework является ИЛИ картографа, чтобы облегчить ваш доступ к базе данных; вы можете сравнить это, например. NHibernate, Linq-to-SQL, Subsonic, Genome или другие OR-карты
WCF Data Services - это способ разоблачить ваши модели данных во внешнем мире через HTTP/REST; Сравните это с унаследованными ASMX веб-сервисов, чистых услуг WCF, другие сервисные технологии
Вы не можете сравнить два - они совершенно разные звери, и во многих решениях, они будут работать вместе - один не может заменить другой ,
Если у вас есть консольное приложение, которое должно считывать данные из базы данных, вы можете либо напрямую использовать Entity Framework - в этом случае ваше консольное приложение должно иметь прямое подключение к базе данных и привязано к платформе Entity Framework технологии.
Возможность обнародования данных с использованием службы данных WCF добавляет еще один уровень - ваше консольное приложение не имеет прямого доступа к данным, но оно просто вызывает службу данных WCF. Теперь у вас в основном две части: консольное приложение в качестве клиента и какое-то сервисное приложение, которое будет предоставлять данные. В этом случае вашему клиенту не нужно ничего знать о Entity Framework или что-то в этом роде - вы также можете легко добавить второго клиента, например. веб-приложение. Но сервисное приложение, предоставляющее данные, все равно должно иметь возможность напрямую подключаться к базе данных с помощью Entity Framework.
Итак, в конце концов, вы действительно не заменяете Entity Framework службами данных WCF - вы просто добавляете еще один слой косвенности, но, в конце концов, чтобы получить данные, вам все равно нужны какие-то данные технологии доступа (например, Entity Framework).
Да, это яблоко и апельсины, и каждый из них решает разные проблемы. Службы данных WCF не кажутся подходящими, если только одно приложение будет использовать его для данных ETL'ing. –