The Plato core refers to the main libraries or projects that provide all common , lower level functionality within Plato. For example asset management module management, caching, localization, authentication, permissions, logging would be considered part of the Plato core. All projects that are part of the core are identified with a unique namespace prefixed with "Plato.Internal".
You can see below within the Visual Studio solution explorer most of the nearly 60 core projects...
You can also review all 50+ core projects on GitHub.
The core version of Plato you have installed can be seen within the footer of all your Plato front-end pages and within the footer of all Plato administrator dashboard pages. You should see the message...
Powered by Plato X.X.X (build type)
Where X.X.X would be the specific version number of the Plato core you have installed and (build type) would typically indicate but not always "Preview", "RC" or "Final".
A major upgrade would considered a move from say version 1.4.3 to say version 2.0.0. For major Plato upgrades we would always suggest starting with a fresh set of files. Try to avoid copying newer versions of the Plato core over the top of existing older versions of the Plato core. For major updates we will always publish detailed upgrade documentation.
A minor upgrade would be considered a move from say version 1.2.2 to version 1.3.0. For minor updates you can typically just replace the older version of the core libraries with the newer versions. This would require you replace older Plato.Internal assemblies within the Plato web application
\bin directory with the newer version of the Plato.Internal.*.dll.
A bug fix release would be considered a move from say version 1.3.5 to version 1.3.6. Bug fix releases are typically smaller in scope and as such you can typically just replace any older assembly within the Plato web applications
\bin directory with the newer version of the Plato.Internal assembly.