Sadly, the various versions of Windows do very little to utilize multi-cores in the way of load balancing. Load balancing means that the OS would seek to balance processes across various cores such that those demanding a lot of CPU would not all reside on the same cores while others sit idle. With load balancing, processes would be dynamically reassigned based on their CPU usage profile.
From my tech days with mini-computers that type of load balancing was fairly typical of proprietary OS and flavors of UNIX. As best I know, Windows still doesn't really load balance. It just tosses something on to a free processor when it launches it. It is quite possible to have one maxed out while others sit completely idle. As such if you have a good sense of how you use your PC, you can craft one or more profiles by hand.
Myself, I like to play games while leaving email, browsers, and other things running. By separating games from these other things, I can prevent my games from taking periodic FPS hits.
With my wife's PC (she trades), I was able to make sure that certain CPU hog applications which are critical to her have their own processor separate from everything else. Thus, she always gets snappy response when she needs it.
Never more! (I've had enough. Sliterine has raised mediocrity to an art form!)