I love the concept of linux, really I do, but I find that a lot of tools simply don't exist on linux yet, or that I prefer the windows versions. Plus, I really like the windows concept of an "Add/Remove Programs" thing, or even the idea of a central control panel, so that I don't have to edit lots of configurations scripts to make something simple work as intended.
So, I actually do live the best of both worlds. (OK, second best because its Vista and not XP, but what can I say, I'm just hoping that Windows 7 is actually decent and fixes most of the Vista issues.) Here's how:
I use a nifty program called "andLinux" to run the linux kernel inside a windows process. This allows me to run windows as my native operating system, meaning that windows programs work fine as intended. I can also run linux programs and not only do they show up in "windows" windows, I can even copy/paste between them like they were on the same OS. (Remember, the linux programs are actually running on linux, which is running as a process in windows, so they all behave properly.)
This, I've found, actually works better than the reverse, which is to main linux and run windows through Wine. The reason is that windows programs tend to have much more complex requirements, and I generally have more success with them (especially the internet/3D requiring ones) on their native OS. Linux programs, because they cannot rely on certain features being in the kernel, but instead require on those features as an additional package that can be installed on any kernel, are thus much much more portable, and don't suffer when run under andLinux. In fact, I prefer to use the linux version of Apache, since trying to run a windows web server gives issues with lots of things, like the fact that windows uses forward slashes for directories.
The only other thing that I really prefer about linux over windows is the general desktop environment. Linux desktops generally all have built in support for virtual desktops (no native windows version has this) and usually offer the ability to to customize the menus far far more than the windows taskbar. For this, I use a program on windows called "SharpE" (google "sharp environment" to find it) which replaces the Windows Shell and, even in its default configuration, behaves very much like a linux desktop, while still allowing you to access everything on your windows PC through it.
The major plus to all of this for me is, windows has superior support for most devices. For instance, I can actually use my dial up modem in linux this way, even though there is currently no linux driver for it.
I feel that this is the best of both worlds. I use linux apps where needed, and windows apps where more convenient, or when its just what I'm more used to, and neither one really gives me any problems at all. The best part is, if the linux kernel crashes, I just restart the program. ^_^ Hasn't happened yet of course, but the safeguard is there.
Just my opinion and experience here.
-Nicholas