A core is an independent processor that is able to run its own fetch-execute cycle.
A computer with multiple cores can complete more than one fetch-execute cycle at any given time.
A computer with dual cores can theoretically complete tasks twice as fast as a computer with a single core.
not all programs are able to utilise multiple cores efficiently as they have not been designed to do so, so this is not always possible.