After a few months with mine (had it since December), there are definitely some pros and cons to go with it. I hate touch screens in general, but the iPhone's touch screen interface is really, really great. It's also nice having a music player and phone all in one.
Cons, it depends on where you are, but EDGE can be slow. If you've got a good signal, you're most likely going to get great internet speeds. If you've never used wireless internet on a phone before while out and about, you're not going to notice... but don't expect broadband speeds.
Also, my girlfriend, who has Verizon, complains about a buzz that we get on both ends during conversations. I've noticed it too, and I think it's incompatibility between networks.
IMO, the iPhone is just going to get better from here on out. Iowa does not even have a 3G network yet (though Des Moines may get one by the end of the year). Apple just released their SDK (software development kit) to 3rd party developers yesterday, allowing people to release free or pay software to download for use on the phone. Plus, Apple is adding a host of corporate features that will heighten its appeal to businesses. The downside is that this is all coming in June, and with the possibility of a new 3G iPhone coming out by then, you should probably wait.