I think it is an interesting exercise to think about the worst thing to happen to web development in the past 20 years, but I don't think I have an answer for that right now.
In theory you could find a nice widget set and have components like a desktop app framework like WPF or Java FX but often people wind up with several different component sets, each of which has an idiosyncratic approach to CSS or something just plain psychotic like pre-grid layout bootstrap.
On my own account I make apps that are not JavaScript heavy unless I want to do something exotic like use three.js.
React has the strong advantage that it is easy to make video game like animations that work over the application globally, but I think it is a strong minus for most of what management really values…. That is, having an application that works, having it developed quickly, being able to update it quickly.
Definitely XMLHttpRequest becoming available to JavaScript in 2006.