Battlefield and Call of duty is apple and pears. Each offers a unique gaming experience.
With Call of duty you pretty much much know what to expect, only with different weapons and a few small changes. While some complained that Black Ops was bad, many enjoyed the game and still do. Not everyone wants to play another Counter-Strike clone competitively, they rather enjoy the other game modes and the full weapon experience that Call of Duty brings.
And quite frankly, did anyone really bought Black Ops or even Modern Warfare 2 for the single player campaigns? It was a nice feature, to play when the internet is on the fritz, but it was not the main attraction, for me at least.
But I have to say that Call of duty is getting a bit old now, and players are looking for something new. But for Call of duty players it means that they are looking for a new close combat, fast action game, a run and shoot game. I don't think a Battlefield 2 game will appeal to them.
Battlefield 1942 was lots off fun. Battlefield Vietnam was funky, Battlefield 2 was near perfect, if you consider the experience and not the crappy hit detection, net coding and powerful aircraft with the cues of aspiring pilots not capturing objectives. It was popular for 5 years, which is very well done if you think about it.
Battlefield 3 will have to be pretty amazing to achieve the same success. However, if you consider Bad Company 2 and Medal of honor, the already announced changes to Battlefield 3, the lack of the commander and a singleplayer campaign, then it indicates that Battlefield 3 will be different from Battlefield 2. Whether it will be bad still remains to be seen.
DICE and EA should create a excellent Battlefield game, not a game to draw the Call of duty players. Each game has its own attractions.
I suppose that both games will be criticized by some players that had different expectations or simply likes to complain, each will have its own fans arguing why their title is the better one, and in between will be those who enjoy both games and will not have time to visit forums because they are to busy playing.