Nicely stated Trevor!
To add to this, upgrades are not cumulative. You need to run the upgrade for every version you are behind. Check out the upgrade docs. For instance if you're on v8.0.21, you need to upgrade to 8.1, then upgrade to 8.2, then upgrade to 9.0, then finally upgrade to 10.0.
Only hotfixes are cumulative, meaning if you were on hotfix 9.0.6 could you simply apply hotfix 9.0.50 without needing to apply each individual hotfix.
As Trevor stated, make sure after you run each upgrade (code and database), you run your website by simply navigating to domain.com/admin. If you don't, guaranteed future upgrades and hotfixes will fail.