With regards to The Dark Knight being too long, in a way, I think it is, but not by that much, only about 20 minutes.
But most 2 hours+ films that I've seen, I've enjoyed without getting bored at all, even There Will Be Blood, which some people have said is boring. Lol, no.