I can't think of a single real-time game that uses TCP. The main reason is TCP is garunteed to arrive and arrive in-order. How they do this is by "acking" (acknowledging) back to the client for every packet recieved. This is a lot of overhead in a game, where you need to have complete control over how big and how fast your packets get sent. There are special cases, however, where games are not real-time, perhaps turn-based or something similar, where they don't need the speed of UDP and can therefore let TCP handle just about everything.
Most games use UDP, as I aforementioned, because of the speed issue, primarily. There are some methods, such as reliable UDP, that help garuntee that all packets arrive and that they are processed in order.
We're currently using RUDP in our game.
Feel you safe and secure in the protection of your pants . . . but one day, one day there shall be a No Pants Day and that shall be the harbinger of your undoing . . .
Ultima Online, one of the first massively multiplayer games on the market and - at some point - served 250,000 accounts - used TCP.
The answer to this question is pretty complicated - and I think it is easy to to say that games use BOTH TCP/UDP.
Even if a game doesn't use TCP at all there is significant overhead in the game code that deals with partial packets arriving in the wrong order, and sometimes not at all. It is almost NEVER as heavy handed as the overhead by full blown TCP, but it is overhead nonetheless.