To find wireless cards that works in Linux is find the chipset that the card uses. The most frustrating part of that is many of the most popular brands keep switching chipset with revisions of the same model. Which is why I buy lesser known brands, usually from motherboard manufacturers, because they usually change the model number if they switch the chipset. Find the chipset by Googling, typing lspci in the terminal, or with a program: like Hardinfo (linux), Fresh Diagnose (WIN) , or Everest (WIN).
Most distros add Ralink and Broadcom chipset support to the drivers in the stock linux kernel, plus many others. Also Atheros chipsets are supported in some distros (I didn't see it in Ubuntu) and from http://madwifi.org I have bought Ralink based cards and they worked great in Ubuntu without needing firmware. I have a Broadcom wireless in my Dell Laptop, Ubuntu said it was there though it wouldn't work until I extracted the firmware from a Windows driver, it turned out to be very flaky so I used the ndiswrapper to use the native windows driver. http://ndiswrapper.sourceforge.net/
http://ubuntuguide.org/wiki/Ubuntu_Edgy#How_to_install_Windows_Wireless_Drivers_.28Ndiswrapper.29
Chipset support from the stock 2.6.19 kernel:
Intel PRO/Wireless 2100 Network Connection
Intel PRO/Wireless 2200BG and 2915ABG Network Connection
Cisco/Aironet 34X/35X/4500/4800 ISA and PCI cards
Hermes chipset 802.11b support (Orinoco/Prism2/Symbol)
Hermes in PLX9052 based PCI adapter support (Netgear MA301 etc.)
Hermes in TMD7160 based PCI adapter support
Nortel emobility PCI adaptor support
Prism 2.5 PCI 802.11b adaptor support
(Hermes Cards supported include the
Apple Airport (not a PCMCIA card), WavelanIEEE/Orinoco, Cabletron/EnteraSys Roamabout, ELSA AirLancer, MELCO Buffalo, Avaya, IBM High Rate Wireless, Farralon Syyline, Samsung MagicLAN, Netgear MA401, LinkSys WPC-11, D-Link DWL-650, 3Com AirConnect, Intel PRO/Wireless, and Symbol Spectrum24 High Rate)
Atmel at76c50x chipset 802.11b support (NEW)
Prism GT/Duette 802.11(a/b/g) PCI/Cardbus support (visit http://prism54.org for list of cards)
Intersil Prism GT/Duette/Indigo PCI/Cardbus
USB ZD1201 based Wireless device support
Host AP (Prism2/2.5/3 and WEP/TKIP/CCMP)
Host AP driver for Prism2/2.5/3 in PLX9052 PCI adaptors
Host AP driver for Prism2.5 PCI adaptors
Ubuntu 2.6.17 Kernel also adds
Broadcom BCM43xx wireless support
ZyDAS ZD1211/ZD1211B USB-wireless support
TI acx100/acx111 802.11b/g wireless chipsets
RTL 818x wireless chipsets
RTL 8187 wireless chipsets
Intel PRO/Wireless 3945ABG
RaLinkTech (Visit http://rt2x00.serialmonkey.com/wiki/index.php?title=Hardware for a list of cards)
ADMtek ADM8211 support
( Xterasys Cardbus XN-2411b, Blitz NetWave Point PC, TrendNet 221pc, Belkin F5D6001, SMC 2635W, Linksys WPC11 v1, Fiberline FL-WL-200X, 3com Office Connect (3CRSHPW796), Corega WLPCIB-11, SMC 2602W V2 EU, D-Link DWL-520 Revision C )