Acabo de pasar por esto, así que está fresco en mi mente.
Los principales son: sistema de propiedades de dependencia, sistema de eventos enrutados, comandos, enlaces, INotifyPropertyChanged, estilos, plantillas de control, plantillas de datos, plantillas jerárquicas, activadores, recursos, colección observable
Patrón inteligente: MVVM, Unidad de Trabajo, Repositorio y DI / IOC. MVVM es el principal, los otros solo aparecen con frecuencia. Hay muchos más frameworks ahora que cuando comencé en WinForms. Vale la pena mirar el sitio de Patrones y Prácticas de Microsoft, Prism es bastante bueno.
Pro WPF en C # 2010 de Apress es mi libro favorito sobre el tema, otros buenos incluyen Illustrated WPF, WPF 4 desatado y Sams te enseña WPF en 24 horas. El último es fácil de superar en una tarde y cubrirá lo anterior con suficiente detalle para comenzar.
Creé un diagrama hace un tiempo que muestra cómo la mayoría de los objetos centrales de WPF se ajustan a una jerarquía. Es bastante interesante, intentaré publicarlo en algún lugar y agregaré un enlace aquí más adelante.
Pruebe y asegúrese de que el proyecto en el que trabaja esté usando WPF 4. Visual Studio 2010 es mucho más agradable, y WPF 4 incluye muchas correcciones sustanciales que lo hacen más confiable, más rápido y en general mejor.
Editar: Acabo de agregar el diagrama de jerarquía de clases que mencioné. Es bueno para una visión general, creo. Echa un vistazo y avísame si hay algo que se ve mal :)
Jerarquía de clase WPF