The dual core may be a better choice as it will allow for better performance as most apps are now optimized to run on multiple cores. But as socialfox said it depends on the architecture of the CPU. So what two cpu's are you comparing (what models)?
Many applications nowadays can take advantage of 2 cores so for those programs and games a dual core CPU would offer better performance even though the clockspeed is slower.
There is also the updated CPU architecture that can have a big impact on processor performance. Long ago it was MHz that matters, now it's IPC (instructions per clock). The greater the IPC a CPU can execute per 1Hz the more efficient the CPU is and more or less the faster it will be.
So... if the old single core 2.4GHz CPU can execute 2 instructions for every 1Hz while a newer dual core 2.0GHz CPU can execute 3 instructions per core, the newer dual core CPU will be faster even if only one core is being used while the other is idling.
To use some numbers let's just say the single core can execute 2 instructions every 100MHz (to keep the numbers small); that means a 2.4GHz can execute 48 instructions every cycle. The newer dual core CPU can execute 3 instructions every 100MHz per core; that means a 2.0GHz can execute 60 instructions every cycle if only one core is used. In a perfect world conditions that means if both cores were being used the dual core CPU can execute 120 instructions every cycle. In actually it will be much less than that say maybe 80 - 90 instructions every cycle depending on how efficiently the program is coded, waiting time for other instructions to be executed, wrong predictions, and a whole host of other things that can cause a delay in execution.