I have faced the same problems with Wireless Networking as mentioned by many on the web.
I tried Hardware Compatibility List for Linux and many links on that list. In an attempt to install custom drivers I would always end up with a network card that would detect wireless but never would communicate over wireless. After going through a number of cards and uninstalling and installing drivers I found one that worked really well without resorting to the ndiswrapper solution (dealing with anything windows just feels unclean). Finally I found a card that worked and also provided native linux drivers.The wireless usb card that worked was - D-Link DWA–125 with Ubuntu Lucid Lynx.It also helped that D-Link in fact published a linux driver for their wireless usb card.