I saw the OP’s thread title and immediately thought of Keanu Reeves as John Constantine. Terrible, terrible casting, for someone who is supposed to be a smooth-talking, dark, sleazy British con man and magician. The character was conceived in the mid-'80s to look like Sting, and while Sting is too old, I’d have cast someone like Ewan McGregor or Jason Statham. Being British is a pretty integral part of the character, although if they had to go with an American Constantine, I’d have gone with Kiefer Sutherland, who looks the part, and can play dark and dangerous.
Halle Berry’s Catwoman will be a laughingstock, a bomb, the Gigli of superhero movies, mark my words. But Gina Gershon would be my dream actress to play the “current” DC Comics Catwoman. Furthermore, Angela Bassett would have made a much better Storm in the X-Men movies than Halle did.
I also thought Ben Affleck was sorely miscast as Daredevil. I’d have gone with Guy Pearce, Brad Pitt, or Matt Damon, any of whom could have brought more pathos to blind attorney Matt Murdock, and more “badassitude” to Daredevil (and any of whom look more like the comic book version).
Leonardo DiCaprio seemed out of place in Gangs Of New York. He’s a good actor, but that role required someone who looked tougher, more streetwise, less of a pretty-boy. Colin Farrell would’ve been perfect, actually–and he’s even Irish!