I have always gone for a fresh install, however, since going to Windows 10, I have found it to be so rock solid, that I have not bothered to reinstall for a good few years now, and I have kepot my motherboards to as close as I can to its previous build.
That said, last year, I swapped my main system over from intel to AMD and so what I did, was I uninstalled as mujch dribver stuff as I could do, I also deleted as much as I could from the Device manager and I did as much as I could without restarting and so then, when I finally did shut it down, the next time it started up, was in the Ryzen.
It went through the usual new devices found etc, and I had to manually reinstall some drivers, but most were doen by Windows itself and I am happy to say that it wqas a completre success.
These days, it is getting better and better at doing this kind of thing, but years ago it was kind of iffy, especially if you had different Mobo & SATA Drivers.
I hate to admit it, but Windows 10 works well. If only newer versions didnt all look so basic. I miss the AERO / GLASS look.