Got to be Kevin Spacey. As far as character actors go he is the best out there IMO. Unfortunately he has followed up awsome films like American Beauty, The Usual Suspects, Seven, The Negotiator etc... with some poor films like The Shipping News but you can't fault him performances in them - he's the greatest actor of his generation. He's so diverse as an actor. I don't know of any other actor who could have done The Usual Suspects and then done Swimming With Sharks or American Beauty or Seven. Someone like DeNiro could have done Seven, but could he have pulled of Swimming With Sharks or Midnight In The Garden of Good and Evil? I doubt they could have pulled it off with as much conviction as Spacey did.
He has an onscreen presence that not many can rival. And it's not because teenage girls drool over him, it's because he can act. He can hold the screen and the audiences attention while delivering a mesmerising performance. One of the few genuinely talented actors out there today.
I also rate Sean Penn highly.