I thought the campaign was extremely lacking in fun levels. Far too many Flood levels. I think the Flood is stupid and completely unneccessary in Halo 3. They should have just cut-scened the Flood parts of the game so you didn't actually have to fight the stupid things.
The online is where it's at. There is nothing that makes you happier than owning every time you play online.
For the record, I am getting sick of people comparing Halo games to COD4. The game is horrible. Story mode was lackluster, the graphics have looked better on the Playstation 2, and the online is filled with a bunch of overplaying douche monkeys that want nothing more than to glitch as many times as possible (and when they can't, they snipe everyone through the end of the match). I hate online games where less than 3 bullets can kill you. Where is the redemption in that? Step out and look for an enemy? Oops, shouldn't have done that. Popped in the face before I can even tell what happened. Halo actually takes teamwork, determination, and skill. You actually have to work for your kills. COD4, you can just wait behind walls and pop people as they walk by with a couple shots to the nuts. No thanks...