the older version of .net (3.0 - 4.8) and mvc (3 - 5) was update in place. this meant you installed the runtime update and the code used it. you only needed to update the code if you wanted a new feature. this version of .net is still supported, but receive no new features only bug fixes.
the requirement for backwards compatibility meant that early design decisions could not be changed. .net core uses a different support model. only security patches are update in place. new versions are installed side by side. for an existing app to run on a version, it must be rebuilt. also its version have a much more limited support timespan. LTS version are supported for a year after the next LTS year, non LTS version 6 months after the next version is released. LTS versions are released every 2 years.
your best bet is use a LTS version. then every 2 years, you will have a year to upgrade to the new LTS version. Your sticky point is version 8 LTS is due this Nov, and require you do an upgrade next year. depending on you schedule, you might want to upgrade to net 8 before release.