They're both good games. Halo has its own unique combat style as does Call of Duty 4. The health system is virtually the exact same and both have an excellent multiplayer. Personally, I don't like either of them more than the other. Like stated before, both are great games.
Halo 3 This game is really fun because it takes "skill" to be good at it. Call of Duty 4, like most say, you can just chuck grenades, turn on Martyrdom and you an rack up kills like that. Halo 3, two grenades right on the spot can get you a kill but anywhere besides that will only deplete the shield down.
Call of Duty 4 Really fast paced and really fun. All the weapons are perfectly balanced unlike Halo 3 where some weapons can turn the tide of the battle.
Sniper could be better but most well-placed shots are instant kills so I'm not complaining.