It's not all Canonical's faults. A highly customized install with a few extra libs here and there and some proprietary softare can easily wreck havoc on a system.
I had a continuous Arch install for 4 years without massive breakage through half a dozen major switches, including the fs layout and the systemd transition.
I just upgraded to an SSD and decided to clean slate rather than carry extra fs creep baggage that isn't linked to a package to remove, but I still have that partition around, and I'm pretty sure if I upgraded it it might still boot.
It is why I like rolling releases - rather than have catastrophic breakage every half year, you continuously migrate upwards. It means occasionally you need to pull up a web browser to see why your desktop is missing, but its better than doing a dist-upgrade and getting an unbootable system.
My Debian installation has been the same for six years and survived moving from Gnome → XFCE → Fluxbox → Awesome and installing bleeding-edge mesa and radeon drivers, plus other kinds on tinkering. Oh, and moving to an SSD.
I just upgraded to an SSD and decided to clean slate rather than carry extra fs creep baggage that isn't linked to a package to remove, but I still have that partition around, and I'm pretty sure if I upgraded it it might still boot.
It is why I like rolling releases - rather than have catastrophic breakage every half year, you continuously migrate upwards. It means occasionally you need to pull up a web browser to see why your desktop is missing, but its better than doing a dist-upgrade and getting an unbootable system.