Duplicate:
I recently read a blog entry about someone asking for a good book on windows programming. He was disturbed by the fact that most books he found are about 10 years old and probably outdated (don't worry he found the usual suspects including Charles Petzold). Till today I was reluctant to post any comment on his site, because I simply am unable to answer him. Certainly Windows programming has changed since then and split in many different direction, but where is it going?
A couple of years ago Win32 was certainly THE way to program for Windows in one way or the other. Reasonable fast, a lot of examples and so on. However due to the shift to .NET (heard the fourth incarnation is coming...) there seems to be a change. Although the old API still stands and quite some .net code uses it, it more and more seems to me that it loses its importance. Certainly there are a couple of reasons: First of all C# (.net) with all advantages in giving the programmer a modern language is supersedeing C/C++ in many regards. Another one is that in my personal opinion MS with its VS IDE privileges the development of .NET application very much, but why is it? I mean why there are so many cool features developing in c# and it seems to me that win32/c is some semi-finished thing (eg. the Designer)? Another thing is, that Win32 question on Codeproject and many other forums become less frequent by the month. One last thing I want to add is that all modern fancy GUI/Network frameworks are designed for .NET (Dundas etc..), which makes rapid development very easy and leaves not much room for the old guys...
To make it short: Where do you think Win32 is going, has it any future, should newcomers learn it or will it be outdated and gone within the next years? Will it only run in a Wine like environment in the next Windows version?