Yes, it abstracts it to the extent that it doesn't resemble Win32 anymore. It's something else.
I would have to agree. Win32 is immediate mode, while WPF is retained scene graph.
It's not an abstraction its a complete overhaul.
MFC is an abstraction to me.
As far as I know WPF is built on Direct whereas MFC and Winforms are based on Win32.
That's my understanding as well. Point spy at a WPF app and you see one top level HWND which is just hosting a DX context
WPF is a lot closer to an abstraction over Direct2D than Win32. If you use both of those APIs a lot, you start to realize they have a lot of classes with the same name that do the same thing.
The difference is that WinForms uses some of the actual higher-level UI widgets and layout system from Win32/USER, WPF just uses its message pump and other low-level windowing/IO routing mechanisms, and builds all its own bespoke composition, layout and controls on top of that.