None of the open-source drivers, either from the manufacturer or 3rd party support hardware video decoding, however, closed-source Linux drivers for the big 3 GPU manufacturers (intel, nvidia, and AMD) all contain the necessary code to accelerate video playback, if the hardware supports it. Of these, nvidia's support in the playback applications (VLC, mplayer, etc.) is the most mature and robust. Intel is not far behind. AMD, to my knowledge, is not currently supported, even though the features are available in the drivers, the libraries to hook into the drivers are not available yet. I researched this when building a Linux-based HTPC. Went with a GeForce 8200-based board. Full support for MPEG, H.264, etc. decoding in hardware using Mplayer, VLC, and XBMC video player.
Linux versions of Flash are, IMHO, horrible. Ubuntu ships with an open-source alternative which is worse.
Windows is the best choice if you want it to just work. Most people that complain, shout, and scream about how terrible Linux is, and how they're switching back to Windows expected Linux to 'just work'. Linux is fine if you can put in a little time to get things to work that the distro wasn't specifically designed to do.