Steam is pretty much ideal from where I'm sitting.
- If I buy a game through Steam, I know I can re-download it as many times as necessary on as many machines as my account is enabled on, and when I have my own PC, a laptop for portability, and another PC at my family home that gets pretty regular use, that's pretty damn good. Compare that to something like iTunes, where if you are for some reason forced to do a factory restore of your machine, re-installing iTunes then uses up one of the machine authorisations for your account with them, despite it being the same damn physical machine. Apple, pay attention to Valve.
- Also, any games I already own that weren't acquired through Steam originally can be added to the Steam Games list as a shortcut, and can benefit from the features that Steam adds to it like the in-game web browser and friend chat. For example, I'll be playing World Of Warcraft through Steam via the shortcut I've added, and I can just hit Shift+Tab and be chatting with a friend who is playing Global Agenda. Or I'm playing one of the Homeworld games and I need to look up a strategy for something on GameFAQs without alt-tabbing and having the game crash to the desktop as a result.
- Game updates. I don't have to fuck around looking for patches, it does it for me. And slightly re-tooled versions of games, for example Deus Ex being patched to run at higher resolutions through Steam.
- Not to mention the amazing weekend deals they regularly offer. Was there anyone who didn't already own Psychonauts who was going to turn it down for ONE POUND?
Now look at the alternatives. Games For Windows Live, a poorly implemented system that's not even available in all the countries of the European Union. Or Ubisoft and their offensively draconian system that doesn't even fucking work the way they want it to half the time when the servers go down.