I am beginning to heavily invest in WPF and was wondering what those more knowledgeable than myself thought as to the wisdom of this decision. Is WPF the way forward?
Yes, it is the way forward.
WPF and using XAML for interfaces has completely revolutionised the way in which we develop said interfaces for our customers. The possibilities are endless, the learning curve is large, but with merit.
We can now do things in XAML that we couldn't dream of doing 3 years ago with WinForms - or things that take a few lines of code and an hour of logic that would have previously taken a full week of logic and four class files.
It's definitely the way forward for MS development, however there will always be people using WinForms.
They even developed VS2010 with WPF, that must give it something, right? ;)
Microsoft itself has begun developing its enterprise applications in WPF. They are invested in keeping it going for themselves, no reason to believe that the rug will just get pulled. Also, WPF has the Silverlight subset, which doesn't seem to be losing steam.
XAML is a nice, declarative method of setting up your interfaces with a lot of slick value conversion done for you and the opportunity to add more behind the scenes. It's possible to separate it from WPF, however (although they generally go hand in hand).
I understand that .Net 4 has made some progress toward using the XAML declarative language in Workflow Foundation and in Windows Communication Foundation, which will be interesting, given that those two are already fairly heavily declarative XML driven.
So, XAML is definitely the way forward for MS, especially given that at the core it's nothing more than a way to construct an object graph - any object graph.
WPF is also going to take some strides - for instance, inclusion of the much missed DataGrid (there are excellent commercial alternatives already), and more complex pixel shaders which should push more work to the hardware and increase rendering and startup speed of WPF apps.
As to whether WPF is THE future? Yes, for people who are tied to Windows, who value stylus input and handwriting recognition and who can find space in their development budgets for attractive UI development.
Against Flash, Flex, DHTML in general? I don't know. I'm inclined to think not - most applications don't need the full power of fat client development and don't care that much about pixel shaders et al, happily trading it against the accessibility of web.
Silverlight and XAML are not seamlessly cross compatible, and WPF doesn't transfer automatically to the web. (Yet?) Nevertheless I took the gamble on skilling up, and have found it to be time well spent. If nothing else, it's fantastic for prototyping.