What difficulties did you experience? I’ve upgraded many projects from ancient C# v2 and more modern versions. There are always some things that need to be addressed, but as long as you look at the changes from the one version to the next it’s easy enough to figure out what needs to be changed. Most modern IDEs will point out the issues in an upgrade report.
Bit hazy now, but at work every time an LTS change happens the first team to do it publishes it's notes on how it fixed various issues. Off the top of my head I remember a problem with swagger, but to be fair that's a third party lib. Problems with other 3rd party libraries with version mismatches (i.e one dependency wanting one version and another wanting a different one). It's not some major gripe, just it has never been smooth sailing! :)