a single core rocessor has 1 processor int he package, a dual core has 2.
Of the two which is better depends on the architecture of the specific processors and wether the software these ill be running is multi-threaded. You can have a thousand core processor and if your software isn't multi-threaded it will run on only 1 of those cores. Over all, given mutlithreaded apps, the slower dual core can do more work than the speedier single core. Most processors can execute multiple instructions per clock but lets assume just one. The dual core can execute a theoretical maximum of 3400 million instructions per second while the single core and execue only 2200. this difference gets amplied when we consider mutiple instructions per clock cycle.