I would take BFBC2 over BF3,
That seems to be the general consensus. I haven't played BF3 yet, but I'm completely satisfied with BC2/BC2 Vietnam. I only have it for PC, I am finding more and more servers are populated as of late.
The only bitch about this game is that I can unload an entire clip of SMG rounds into some dude 10 yards away, and somehow he is still able to bum rush me and kill me via knife in one hit. Pisses me off every time.