First, you need to find out how the coverage is in your area for each service. And by "area" I mean at your home and/or work because you could see the service working fine down the street at the store where you buy the phone and then get home and not have any signal.
Second, never sign a contract. It really is worth buying the phone out right and not dealing with the bullshit.
Here's my experience so far:
T-Mobile: Not very good coverage but data is fast and getting faster, 21mbps by mid 2010 they say. Price is unbeatable. Customer service is very pleasant and helpful.
AT&T: Coverage is better then T-Mobile but data is weak at best. Price is high but not the worst. Customer service will make you want to punch babies and kick puppy dogs.
Verizon: (Disclaimer! The place I work uses them, but I have my own phone so have not used them) Coverage seems to be very good and data seems to be consistently decent. Price will make you shit bricks, especially for data tethering. Customer service is helpful.
One last thing to note is that CDMA phones seems to drain battery faster then GSM phones. Lots of people were I work got Verizon's HTC Touch Pro and the battery would last less then 8 hours. I had the HTC Touch Pro (they call it the FUZE) from AT&T, which is the same phone only with a GSM radio, and my battery would last 2-3 days with very similar usage.