As an Asp.Net MVC developer, what is the best starting point to dive into WPF?
WPF is a totally different technology used for a different purpose. You're writing desktop applications rather than web applications.
While there is some cross over in terms of design patterns and both use C# (or VB.NET) as the "code behind", they each need their own approach.
Your best bet is to read and work through some WPF tutorials and then decide on a fairly simple application to write from scratch. Get that working and you'll have a reasonable grounding in the technology.
WPF is a platform for developing Windows Application , while ASP.NET MVC is a platform for developing Web Applications. If you are into Web apps development, and you want to learning something similar to WPF, you can go for Silverlight.
Silverlight is Rich Internet Application development (RIA) platform that can be used to develop interative web apps. Silverlight is also capable of running on desktop as Out of Browser Application.
I suggested Silverlight because, Silverlight & WPF both share a markup language called XAML to a great extent. Once you are familiar with XAML, you can slowly start with WPF.
WPF consists of wide range of new terminologies and techniques such as :
- Routed Events
- Data Binding
- Commands
- Styles and Templates
Some of these are present in Silverlight while some are yet to be introduced in future versions Silverlight.
If you're looking for a framework that helps you apply some 'best practices' in WPF/Silverlight development (similar to MVC helping you in the ASP.Net world), you may want to have a look at caliburn and/or prism (aka. CompositeWPF). However, as others have stated, it's probably a good idea to learn some of the basics of WPF first.