MVVM: Tutorial from start to finish?

Your question really seems to be asking 2 questions:

  1. Where are some good tutorials on WPF, assuming I have no previous WPF experience?
  2. Where are some good tutorials on learning MVVM?

Some of these resources may be duplicated in previous answers...

Tutorials on WPF

  • A Guided Tour of WPF by Josh Smith

    I wrote a series of introductory WPF articles on The Code Project. The goal of those articles is to bring someone with no WPF experience up-to-speed enough so that (s)he can fully understand how the series’ demo application works.

  • Bea Stollnitz (link is to her archives) has a number of great articles on WPF.

  • WPF: A Beginner's Guide - Part 1 of n by Sacha Barber

  • WindowsClient.net WPF Training Videos

MVVM Tutorials

  • WPF Apps With The Model-View-ViewModel Design Pattern by Josh Smith (duplicate link already provided by Yacoder)

  • Jason Dolinger's presentation on the Model-View-ViewModel (link to video embedded in article)

  • Dan Crevier's DataModel-View-ViewModel pattern series (similar to MVVM)

Composite WPF (Prism) Resources
Though not exactly what you asked, it is the natural progression with WPF and MVVM.

  • Codeplex: Composite WPF (Prism)

  • Silver Bay Labs has a number of great videos on learning Prism

  • Channel 9: 10 step-by-step videos on using Silverlight and Prism

  • Codeplex: Introduction to Composite WPF (CAL, Prism): Part 1 (of n)


I was in exactly the same situation recently, mate, and I can tell you what I did.

Josh Smith "WPF Apps With The Model-View-ViewModel Design Pattern" read again, again and again :-) download the code, examine, compile and keep it around

MVVM foundation

  1. Examine the framework, use it in your app.
  2. Look at the Demo application in that framework.

No real start-to-finish tutorials, sorry...


I really liked these articles:

  1. MVVM for Tarded Folks Like Me
  2. How Tards Like Me Make MVVM Apps

He really dumbs down the concept in a humorous way. Worth reading.


Reed Copsey published a nice tutorial that writes a trivial RSS app in WinForms, then makes a straight port to WPF, and finally converts to MVVM. It makes a nice introduction to MVVM before you try and tackle a full description like Josh Smith's article. I'm glad that I read Reed's tutorial before Josh's article, because it gives me a little context to understand the details that Josh is digging into.