in terms of power consumption, it depends on the TDP of the processor.
in terms of calculations /minute, more cores is better but this depends on if the software was written for multi-cores
in terms of calculations/watt, chances are the multi-core will still prevail because most processors have very similar TDP's
and finally you have to take into account that all multi-core processors can scale back and use only one or any number of their cores to increase efficiency in terms of power given system demand/load. So essentially there is no reason not to get multi-core unless you are really concerned about a few watts of power.
Your question is not vague enough! You're supposed to say "which processor is more efficient" and stop there!
Going out on a limb and assuming by efficient you're talking in terms of power consumption. In which case, less is more (more as in better). Fewer cores will require less power which leads to better efficiency. For most applications, a CPU with 2 cores will suffice, and require less power than a comparable quad-core (clock-for-clock). However, in terms of overall performance (assuming you're running multi-threaded tasks and/or Windows 7), more cores will get the job done quicker, generally speaking.