Actually, one of the reasons I prefer Linux is that it has better hardware support. There are occasional devices that are only supported under Windows - but when that happens, the supplier is often fussy about exactly /which/ version of Windows is supported.
When I say Linux has better hardware support, I don't mean it supports more devices (though it does, especially for older devices) - I mean the support is better. You get a device, you plug it into your Linux system, and it works. When you plug it into your Windows system, you then have a hunt for the drivers - do you use the accompanying CD? Do you let Windows figure it out itself? Do you download drivers from the vendor's website? If you are lucky, it all works - if you are unlucky, the vendor feels you need to install trial versions of a series of crapware along with the driver, and perhaps switch your browser to using "Ask" searches if you missed one of the checkboxes. It is particular "fun" if you need the driver for a network card, can't download it because you have no network, and you need another machine to download the 120 MB setup file (for a network card driver!). Even better is when the "driver" you tried to download is just a hardware identification program that then downloads the /real/ driver - except it can't, because your network card is not working.
Of course, I have had trouble with Linux systems too - no system is perfect. But Linux seldom gives me the feeling it was designed by morons.