I finished the single player on PS3 and have to say that I am not impressed at all with BF3.
I did enjoy Modern Warfare 4 and Black Ops Single player so from time to time Call of Duty seems to have a better single player than Battlefield series.
considering I don't play online multiplayer much, I would say Call of duty seems to be better than Battlefield on SP at least.