Entity Framework ist so ein zweischneidiges Schwert. Sobald die Abfragen etwas komplexer werden bricht das ganze Ding auseinander, und es wird echt ekelhaft um die Probleme rumzuprogrammieren. (Hier passiert. Das EF hat bei bestimmten statements mit vielen, leider benötigten, Includes fast 30 Minuten gebraucht, um am Ende ein ungültiges(!) Statement zu generieren.)
Bei komplexen Datenmodellen und komplexen Abfragen würde ich hier entweder eher reines
ADO.NET /
SQL empfehlen oder einen Versuch mit NHibernate.
Was WPF und MVVM angeht: Schau Dir mal die SO-Frage hier an:
http://stackoverflow.com/questions/1...tart-to-finish
Auch die Online-Video Tutorials von Pluralsight (kostenpflichtig) sind klasse:
http://www.pluralsight-training.net/...searchTerm=WPF
Ich bin im .NET-Bereich (leider ?) fast ausschliesslich mit ASP.NET und Services unterwegs und kann deshalb zu WPF nicht viel sagen, aber ansonsten bist Du mit allgemeinen C#-Fragen hier sicher nicht falsch