I think the original attraction was that it was free, simple, and the first game to bring FPS competition to reality. There where others but because they cost money not everyone got on the bandwagon. Since CS was free, everyone who heard of it decided to at least give it a try and becuase it was a decent game, many people continued to play it.
As for comparison to BF3, there is none. At least with the CS and CS source. CS is good because it is for people who want to quickly go into a match and shoot. BF3 is a whole new ballgame since you have tanks, cars, boats, planes, helicopters, etc that you have to utilize as well. The modern warefare multiplayer games where sucessful because they used a similar model to CS. BF3 also recognized the simple approach and has recently released a close quarters update that is similar to CS and MW style gaming.