Going through all the campaigns on heroic, and I'm starting to remember why I like the first Halo's campaign the best- it is the best. It's the one you can actually play on Heroic difficulty, and still have fun without it becoming a tedious bore.
Halo 1: Perfect.
Halo 2: Brutes. Who thought this was a fun enemy to fight? They're just bullet sponges. Shoot them till they fall down. Not interesting to fight like Elites or Shielded Jackals or Hunters. They're just boring.
Halo 3: someone at Bungie must have gotten a fetish for Jackal snipers- there's way too many. You'll find four of them at a time in many areas. Early on you have to build the habit of not doing anything in any area at all until you've taken out all the Jackal snipers. Since two shots of the covenant sniper can kill you, leaving just two jackal snipers alive at any time leaves you vulnerable to instant-death out of nowhere. It's really frustrating to have to play the equivalent of a Halo duck hunt shooting gallary so often.
Halo 4: "Yo dawg, we here at Bungie heard you like shooting shields. So we put shields on enemy shields, so you can shoot shields while you shoot shields." Ok, specifically I'm talking about the Prometheon Knights. On Heroic difficulty these guys run away as soon as their shields go down, and are constantly throwing out their repair drones, which actually have regenerating health themselves, and also flee wildly any time they are hit. Killing in this game isn't fun. It's tedious. I hate firing several shots at a repair drone, only to have it run away and regenerate- so those three previous shots meant nothing. Repeat till I finally kill it before it runs away, and THEN I can actually start shooting the enemy I want to be shooting- the Knight it was guarding.