I just got the htc evo a few days ago and honestly i like it more than the iphone. To be fair, I have never had an iphone, but i know at least fifteen people with the iphone 4 and i have a 32gb touch so i feel like i know enough about them and their workings to make the decision. evo has a better OS than iphone, much better web browser(flash and with the evo's faster processor, loads faster too), open source so most apps are free, and you can do a whole lot more with your phone than you can with an ihpone (the andriod market still has these approved apps like the itunes store, but you can get so called "black market" apps from just anywhere on the internet. IE: I have a gameboy color emulator with pokemon red and gold), it has 4g(I am aware iphone will get it next summer) which is litterally five times faster than 3g on a good day. with 1 bar 4g i can get 1200kb/sec download speeds... mind blowing. the evo also doubles as a wireless router (not sure if phone does this) but i can connect to 4g, then i can connect up to 8 devices to my evo with bluetooth and share my 4g internet, better camera, slightly better screen, and i also think the interface is more user-friendly(plus with open source you have huge capabilities to modify it), it has removable storage, and i can use it as a flash drive.
windows 7 phone looks legit, but im quite happy with my evo