The most truly useful feature for the everyday developers discussed is data binding, or what I’ve described to my colleagues as “data binding on steroids.” The authors go into great detail about all levels of data binding, and do so in such a way that you get a good understanding of what is being done under the covers. They do this by creating sample applications with limited or no binding at all, and then gradually replace hand coded functionality with the appropriate binding code. You very quickly get a grasp of how much the framework is capable of doing for you, as long as you master the correct XAML markup. In fact, odds are you will be overwhelmed with the amount of markup you will need to learn in order to take full advantage of the framework.
Other topics which are discussed are WPF themes and styles, printing and XPS generation, as well as the previously mentioned animation and 3D graphics. There is also an appendix which talks about Silverlight. While Silverlight does utilize XAML markup, it is a completely different topic from WPF, and the information presented is already out of date with the upcoming release of Silverlight 2.0. The appendix also covers interoperability with Windows Forms, but the emphasis in the book is on creating solutions using WPF from beginning to end, and using mixed code is discouraged.
Despite its breadth and depth into the topic, Programming WPF is not a reference book. Though it contains a great overview of XAML, it is by no means comprehensive. However, taken in concert with XAML In a Nutshell, which I reviewed earlier, you can easily jumpstart your development using WPF. For anyone who is interested in diving into the Windows Presentation Foundation in depth, I highly recommend Programming WPF. This may very well be considered the Bible of this technology.