This post is being written and published wirelessly from a laptop running Linux - which in itself is a minor miracle of sorts.
If there is one area where Windows kicks Linux butt it is in wifi - especially if the wireless uses WPA encryption.
My son-in-law came over a few weeks ago with his XP laptop and wanted to connect to my router. I gave him the encryption passphrase, he typed it in and 15 seconds later he was connected and surfing the Web.
To get this Linux machine to do the same thing:
(1) I needed to get a proper PCMCIA card that is compatible with Linux. There are many wifi adapters that are not - you can usually wrap up a Windows driver so it'll work with any given card but that takes a bit of programming. Or you can build a driver using Linux source code (assuming you can find it). In my case I planned ahead and bought the proper card.
(2) I needed to teach the machine to recognize the fact that my router is sending out WPA encrypted wifi information. Again some programming of configuration files in Linux was needed.
(3) I then had to tell the machine to get a local network address for the wireless connection when it starts up. More programming was needed.
Steps 2 and 3 required some additional research to figure out precisely how the programming needed to be done and where the steps were placed in the Linux configuration files.
The result is that a 30 second connection in Windows required a day or so of research and futzing around in Linux. And that's with a wifi adapter that works.
Until Linux development gets this stuff sorted out better, most folks will just want to use Windows for wifi. If Linux has an achilles heel it is wireless.