Personally, I think the definition of a "hard" game can be debated. For early games, being "hard" meant one of several things:
1) It was just really long - when levels are 2d / simplistic to program, they could just make hundreds of them if they wanted.
2) Tricky situations - mostly, situations where you had to either spend hours and hours trying everything, or where you had to buy the strategy guide in order to know what to do. You know the games that I'm talking about *ahem*Myst*ahem*
3) Timing skill - situations where you had to time things perfectly or you'd end up in a lava pit, or any other number of horrors.
If I missed some, please forgive me.
Modern games seem to have thrown out a lot of these "necessities" for games to be hard, especially 1 and 2. I find that modern games (say, when they started to be 3d and/or online multiplayer and it took much more effort to create a level design) tend to be hard for different reasons. There are still situations where timing is required, but I find that most difficulties lie in strategy, most notably the endless possibilities for strategy, especially in RTS / RPG games, and the occasional FPS.
Personally, I like the modern version of "hard" games better than the "hard" games of the past, which just lead me to frusteration and early replacement of controllers.
As for the hardest modern game I've played - I'd definately have to say Starcraft. The single player wasn't hard, but the multiplayer certaintly was, especially against really good players. The controls were easy and the concepts behind the game easy to grasp, but strategy was endless. That's the kind of hard that's addictive and encourages you to play more as opposed to smashing the CD into little bits. I played this game for 5 years