Originally, CPU's were made of discrete components. Then CPU's were put onto silicon chips, but the rest of the computer was outside of the chip. Multi-processor computers had multiple processor chips. Caches were managed externally. Coprocessors for floating-point instructions were a separate chip.
Then increasingly, integrated circuits came to be made out of functional blocks. The ultimate example of that are modern "systems on a chip": chips that not only have a CPU, but supporting circuitry. For instance, video accelerators, serial communications and ethernet.
On a chip that includes other blocks besides the CPU, the CPU is called the "core".
When you put multiple blocks on a chip, one obvious thing to do is to put multiple CPU cores to build a multiprocessor on a chip.
The cores typically share some resources. For instance, while they may have their own L1 cache, they might share an L2 cache.
So that is what cores are on a physical level: they are CPU blocks put on a chip. It has become common to do this, which is why you hear the term "core" a lot.