The main differance is the shooting system. Halo takes a large amount of shots to kill, resulting in much longer battles person vs person. Also, halo is MUCH faster paced deathmatch style.
COD4 has a more 1-2 hit kill system according to Hardcore mode. The fights are usually shorter, as two shots to the chest will kill.
COD4 also has a nice change in pace. You can play S+D, much slower, or TDM, a much more rapid paced gamemode. If you like more realisic, modern FPS with amazing graphic detail, COD4. If you prefer more futuristic, with always fast-paced combtat, Halo.