It is not proven that Gnome3's or Unity's approach is perfect yet.
To say the least. But I've tried both for a few weeks each and they definitely make me less productive than Gnome 2.
However, the problems of the taskbar/windowlist is, that they are grouped by no order at all. Minimizing a window leaves no trail where to find it again, except the 0.3 second animation with shrinkboxes or some compiz effect. Users might remember that for some time, but not much.
You can see at a glance which windows are open by their icon (which admittedly only shows the program, not document), title, and you have a good cue of which window is which from its position (rightmost is most recently opened). There may be a better solution but this is excellent in minimising number of clicks (everything is one click away) and quite good on impact on short-term memory (not much demand to remember which windows are open).
Gnome 3's approach: When there is no way to minimize a window, it keeps its position. Keeping positions of objects is a powerful cognitive concept that Windows and KDE seem to have completely dismissed.
This pretty much fails when you have overlapping windows. It doesn't help that a window keeps its position if I can't see it. I find it's also useful to minimise a window to reduce visual distraction. I find in Gnome 3 I waste lots of effort manually shuffling my windows around so I can either hide them or so they're slightly overlapping so I can click on them without putting my cursor into the corner. Surely the opposite to what was intended.
And after pressing the funky key, users can see all the windows, not-overlapping, from a bird's-eye view and select much larger surfaces to access them. That is actually much more "efficient" that scanning a list of minimized windows
It's less efficient in the sense you have to click somewhere or press a key or move your mouse to see the windows. Changing mode to change windows and having all those windows flying around I find is more distraction to my workflow. Maybe our brains work differently? I'd be happy to have both options however as sometimes an expose-style window map is useful if you've "lost" a window.
Another good idea in Gnome3 is creating virtual desktops semantically instead of having a fixed number of them.
I think this is potentially a good idea that needs more polish. In Gnome 2 I can click on the desktop I want with one click from the taskbar but in Gnome Shell I need to go into the separate mode.
I think a lot more can be done with virtual desktops. It would be nice for example to have one project per desktop and then to be able to save that desktop (open programs, views, files) as a project, close it, and be able to reopen it at a later date, link it to a to-do list, etc.
Not directed against you, MrNiCeGUi: many people claiming to be "power users" and needing a lot of config options, are in fact wasting time and are just feeling to be productive by staring at pointless data diagrams or actually designing their own UI by moving stuff around, very likely making it measurably less efficient.
I agree to the extent that you can make something too configurable. Too many options make it hard to find what you want to change, make things too easy to break, too hard to test. However, you can also make things not configurable enough. People's brains work differently so like to work in a different way, people have different hardware and software setups (e.g. number of displays), and work on vastly different projects. I think Gnome 3 shell and Unity have gone significantly into the "too little configurability" camp. Gnome 2 was a very good balance by contrast.