I'm going to echo my answer from [this question][1]. If you've got no power or space limitations, you can just buy a WiFi router that can run Linux, and pull out some of its IO pins to do whatever you want (they've got at least a UART and some GPIO). I'm pretty sure you still can't get a microcontroller + WiFi module for less than a [prepackaged WRT54GL][2], which has all the bugs worked out, and a metric pile more CPU power than you're going to get from a PIC or Arduino.


  [1]: http://electronics.stackexchange.com/questions/8669/wired-and-wireless-embedded-ethernet-project/8670#8670
  [2]: http://www.amazon.com/Cisco-Linksys-WRT54GL-Wireless-G-Broadband-Compatible/dp/B000BTL0OA/