Black Ops 2 is obviously going to sell more because of multiple consoles and the target audience is children.
Black Ops 2 is mixing it up with campaign and multiplayer that no other call of duty has done, so maybe their game will get better, we don't know.
Halo however is running a continuation of Master Chief, which is one of the best video game heroes known. The multiplayer in Halo has always been good, until armour lock came in but even then there's the "Classic" playlist with no armour abilities so if you don't like armour abilities then you could play that.
As for their storylines... I am honestly 100% sure Halo will be superior, Halo has books, a video game, and a new live action series which as far as I know no other first person shooter has. BUT then again BO2 is going to be mixing it up and changing gameplay around so I honestly cannot say for sure.
Graphic-wise Halo 4 shits on Black Ops. Hands down.
But it depends on what your preference is. If you like a good storyline then buy Halo 4, if you like fast-paced multiplayer then BO2 is right for you. If you want a skilled multiplayer, Then i would say Halo.
Again, you cannot be sure which is better, for they have not come out yet, I'm getting both because they both have potential. But even if Black Ops 2 will get the most sold, I am certain that Halo 4 will get more video game awards than COD.
Just fucking buy one.