At the current stage, 2 for most games, 3+ for a few. What matters is how efficient the cores actually are.
More cores allow you to run more things same time, not run faster games (as a general rule).
Note that when i say 2 cores i mean "just the game" skipping OS and other running programs. This is why 4 cores are mostly used now, 2 for a game 1 for windows, 1 idle/side programs.
As above, generally a game will use one or two, but then other stuff is going on in the background. Also generally speaking CPUs that only have 2, wont have 2 that are good enough. I think what you might be curious about is 8 core cpus. I had someone try and sell me one on this point when i first built my rig, but a little research proved that it wasnt needed.
Yeah 3 or 4 is ample. That being said, I bought a quad core when dual core was ample (for future proofing with coming-up games being better optimised for multi-threading) and it really paid off. It's hard to know how many cores will be utilised by future games.