Routed Events and Dependency Properties in WPF

Sahil Malik has a great article on CodeGuru about the Ins And Outs of Routed Events and Dependency Properties in WPF.  To "get" WPF, you really have to take the time to learn both of these concepts. 

 Adam Nathan's excellent WPF Unleashed (which should be required reading for anyone working with WPF) does a good job explaining this concept as well, but I think Sahil nails it more cleanly than any other article or book that I have read before.