RSV2 has great character customization, realistic weapons, fun game modes and actions like wall cover. I think the ranking system is better in RSV2 although the online leaderboards can be screwed up sometimes.
CoD4 has great multiplayer and gameplay along with a good story but lacks some of the realistic elements.
If you like run n' gun gameplay get CoD4 If you like tactical gameplay get RSV2
call of duty is great in every way but theres one thing i need there. WALLCOVER. i looks and is so stupid when you just duck in front of a wall. that where the great cover system of rainbow6v2 comes in... but i think call of duty wins, but it truely is a close run