^ This. DF is a single core program that does not (yet) support multithreading. If you have a single core processor that is very high speed, it will run DF better than a quad core where each individual core is smaller than the single, even if the SUM of those quads makes a higher total. Also, DF does not yet support 64 bit, so your RAM cap is 4 GB; the excess RAM is wasted. However, research from the common causes of FPS death seems to indicate that it is processor power, not RAM, that is sucked up until the game slows to a crawl.
Solution: all of the above FPS reducing tricks, have a powerful single core or, barring that, make the dwarf fortress process have the highest priority on its core, and kick everything else onto another core. My computer-fu is weak, so I cannot help you more with the last two tips.
If a program is 32-bit, it just means that the individual program cannot access more then 2GB (3GB?) of RAM, even if the operating system is 64-bit and has a few dozen GB to work with. So I wouldn't say that more then 4GB is wasted, it can easily be used for other tasks or running the operating system. And it increases the odds that DF will get a full 2-3GB to play with without causing the rest of the system into the swap/page file.
If the OS itself is 32-bit, then generally that limits you to about 3.3GB of total RAM. Unless you do some addressing tricks which may / may not be compatible with every program.
Assuming that the single-core, dual-core and quad-core CPUs are all from the *same* CPU generation and have equivalent amounts of cache as well as the same architecture/design, then yes, a higher GHz single-core CPU will outperform a dual/quad core CPU with a lower clock rate. But an older P4 running at 3GHz is unlikely to outrun a Core2 at 2.5GHz (different processor generations, different architecture/design, probably a lot more cache on the Core2, etc). I don't remember how much more powerful Core2 is over the old P4s on a per-clock basis, so the 20% faster for the same clock rate is a bit of a guess.
For something like DF, and other single-process games/programs, a faster dual-core CPU is to be preferred over a quad-core CPU where the individual cores run at a lower clock speed. (Again, assuming that both are from the same chip family / generation.) On the flip side, I'd gladly take a 2.0GHz quad over a 2.2GHz dual, just because it lets the OS spread the load across more cores, which makes everything nicer and less laggy.
It just gets a bit murkier when I have to choose between a 3.0GHz dual and a 2.0GHz quad from the same CPU family (like the original dual-core Phenom vs quad-core Phenom).
Having used multi-core CPUs for a number of years, I will never go back to a single-core. Even if that single-core ran at a bajillion GHz. Due to the way Windows does its scheduling, having at least 2 cores is greatly preferred because it keeps the system responsive under heavy loads. Even if there's a runaway process eating up all the CPU time on one of the cores.