I was having slow wifi speeds on my 4S (laptop sitting right next to it was getting 30Mbps down meanwhile the iPhone was seeing 2-3Mbps. I thought I had tried everything (deleted wifi profile, and re-added it, reboot router, change Wifi channel, txpower etc. ) Nothing worked & I was ready to exchange the phone thinking it was a bad wifi radio chip or something.
Long story short I followed the advice here and did a "reset network settings" and lo and behold it actually worked. Now getting 20-22mbps on the iPhone. Hope it "sticks" ... cheers guys for the advice