A site config is a Pipeline Configuration which has no assigned Project.
When Sg Desktop and Sg Create start up it loads the site config first which will get you (in the case of Sg desktop) to the Projects Screen.
If you don’t have your own site config defined then Desktop will load the latest available config from ShotGrid (GitHub - shotgunsoftware/tk-config-basic: The configuration driving the Flow Production Tracking Integrations.).
This also defines which desktop engine version runs because it is started while the app loads.
Once you load into a Project config toolkit bootstraps a new python process into the chosen configuration specifically for that project (however the desktop server is not started again because only one instance of that should be running).
If you want to take over and define the behaviour of Sg Desktop startup and the specific versions of the engines and frameworks, then you can create a Pipeline Configuration, call it Primary
and do not assign it a Project.
Then configure it how you do it usually, either by uploading or linking to a config on disk/uploaded zip file or by using the legacy centralized config setup paths.