I bought it a few months back when Steam had it on sale. I think it was the Summer Camp sale, but honestly, I can't remember, and it's unimportant.
I kinda bought it on a whim because it looked interesting and the price was right. I knew nothing about it beyond its description on Steam.
Holy shit was it a pleasant surprise. In retrospect, I would have paid full price for it. Great music, great atmosphere, great gameplay... had a really good balance of outlandishness and realism that worked quite well for it.
The only gripes I had were...
1. The menus. I hate motion blur a lot. I think it makes games look incredibly ugly. Trying to keep the graphics settings on the game maxed while removing motion blur was, if I'm remembering correctly, kind of a *****.
2. Stealth sections. I'm not one of those people that hate "arbitrary" stealth sections in games... I generally enjoy variety in games. And actually, the stealth sections in Metro 2033 felt very natural for where they were. The problem I have is how ridiculously unforgiving they are. One guy spots you, and suddenly everyone knows where you are - even if you managed to silently take that guy out before he got the chance to say anything or raise an alarm.
3. Length. I've played shorter games, and honestly, I don't care if a game was short as long as it was short and awesome. Metro 2033 falls into that second category of short and awesome, so my complaint with regard to length is more just that I wish I had more of it to play.
EDIT:
One other thing... don't play it with the English dub. The voice acting is pretty underwhelming. Play it with the Russian voices and English subtitles. Really adds a lot to the immersion, IMO.