The way you phrased what you said is confusing. When you say "sometimes linux alone" is not compatible with certain hardware are you trying to imply that by installing a dual boot system that linux with be more compatible?
Or are you saying that somethings things are not gonna work with Linux so it be nice to be able to run windows?
Basically dual boot means that when you first turn on the computer you can choose what OS to use. Not that both will boot at the same time and share hardware.
If you are worried if the OS will detected all the hardware correctly like the video card. I would suggest running your Linux Distro of choice on a LiveCD. URL: http://www.puppylinux.com/cd-puppy.htm
You can then from there see is most of the stuff works. And then install.
If this machine is a spare computer and you already have windows installed on your main PC. Then I recommend not complicating things and just install linux. Adding a duel boot windows wont add any functionality or hardware support to linux. If you want to run a windows app on the linux box you can either use wine, find a opensource version or get a VirtualMachine setup.