Yes. The "Dual Core" means that you are "multicore."
In the old days of computers, you only had one processor. When you ran multiple programs at once, they all had to share that processor.
With a two core processor, your processor can run two processes at physicaly the same time.
I've got a PhenomX3, so I can run three processes at the same time.
Here's the problem: processors have gotten about as fast as modern physics will allow (barring suddenly discovering a black hole that does math). Between 2.2GHz and 3.4GHz... that's about it.
So, we're starting to add multiple processors instead of one faster processor!
However, most programs cannot use multiple processors.
Maybe you noticed that I suddenly switched from talking about "programs" to "processes." A program can be made of one, or more than one process.
Firefox is one process. Which means, at most, it can be run on one processor at a time.
Google Chrome is multiprocess program. There's one main "chrome" that draws the window, and every tab is a separate chrome process.
What this means is, on my 3 core processor, three tabs can all be working at once. Or the main window and two tabs. Or a tab and Windows Calculator and Firefox.
NOW, FOR TF2:
Games do a "game loop" which looks like:
* Get Input
* Get all the other characters from the server
* Move the camera
* Calculate what parts of the map you can see.
* Calculate what people you can see
* Calculate colors, compile shaders, do lots of math
* Cram all the stuff you can see into the graphics card
* Scan the keyboard and mouse for Input
* Decide what that input means.
* GOTO top
If you have a 2.2GHz 4 core processor, when you're running TF2... all that stuff is being done on one of the four cores, effectively running at 2.2GHz.
But, say you break up some of that stuff into extra processes? One process computes the map, one computes what you can see, one does your input and moves the camera... you're spreading the work out onto all the cores, up to an effective 8.8GHz. And when Intel comes out with the 16 core processor, everything gets even faster.
But you can't just decide to break a program up into processes. Processes have a specific way they are allowed to communicate, while different bits of a program can interwork however they want. So you have to very carefully untangle the code to break 'em up to multiple tasks.
This is way mondo simplified, but I didn't think you wanted to read a huge Operating System Theory book for an answer
TL;DR ANSWER: More Cores = More stuff being done at once = More FPS = More QQ n00bs