It has been a while since I played Halo 2's single player, but isn't it basically "go shoot and kill everything" like Halo (1)? I prefer single player that is not, in essence, multi-player being played by yourself. Timesplitters 2 adds complexity to the single player mode. I have always liked the objective based single-player simply because it keeps it interesting.
I have, however, played a lot of Halo 2 multiplayer. When I say "a lot", I mean 15-20 hours. I have also played quite a bit of Timesplitters2 multiplayer. Timesplitters2 wins because it is more interesting and varied. Halo 2 has always felt like "generic futuristic shooter". It just doesn't have what I would call "personality".
Timesplitters 2 gets my vote.