I agree with mpazevedo. The first thing you need to consider is the network. AT&T is great in my area, so I'll be sticking with them. However, if Sprint is better where you live, you should consider it instead.
As for the phones, my (opinionated) preference is that AT&T has the better phone...