EvilTrout - Just to verify your previous statements - I remember when I took networks in the 90s my professor told us UDP was the way to go if reliability wasn't a requirement and performance was important. (less overhead, and of course better latency, etc.) That was the how Everquest successfully implemented it. Many of the EQ players were using 9600 baud dial-up and were very happy with network performance when it first came out. Not to say they didn't have problems at the beginning. But they have long had an awesome hybrid (UDP/TCP) solution that's been tested for a decade.
It's interesting that we've hit a turning point with WoW. I can only imagine how much more pleasant it must be to code using TCP instead of a custom UDP protocol. It also may explain some of the odd network behavior that was "solved" circa 2002 in Everquest but occasionally happens in WoW today.
I think that once you get your abstractions straight, it's not that much more uncomfortable writing for UDP or TCP. I could be wrong, in which case I'd love to hear why.
http://www.gamedev.net/community/forums/topic.asp?topic_id=3...
As an interesting note, World of Warcraft uses TCP.