for example a single threaded application won't benefit from the dual cores but a multi-threaded one will and may run faster on the dual core running at a slower speed than the single core running at the faster speed.
Exactly, and I think it's going to be some time before programmers start writing applications with multiple cores in mind.
For the non-techies -
A thread is like a little program running on your PC. A processor can only handle one thread at a time. Because PC's are so fast, the processor can switch between threads so it appears as if many threads are running at the same time.
If a PC is "dual core" this means it can run two threads at the exact same time (no switching between threads is required.)
So if you had a program which counts to 100, if you ran this as a single thread it might take X seconds. It doesn't matter if it is a single or dual core machine, it will still take X seconds.
If you ran this as two threads (one thread counts from 1 - 50 and the other counts from 51 - 100) on a dual core machine, it would take roughly half of X seconds. Bear in mind if you ran this on a single core machine, it would take MORE than X seconds, as the processor has to switch between each thread as it can only run one thread at a time...
Hopefully I am making sense!
In conclusion, as most applications are not designed with multiple cores in mind, you are probably better off buying a fast single core computer. This will change as software developers start witing multi threads applications in a few years...