The relative reluctance to update to iOS 11, and subsequently the speedy move away from it, was likely the result of it being a notoriously bug-filled operating system. Apple had to quickly push out updates to address security flaws and an annoying autocorrect issue within months of iOS 11's release. Throughout the cycle, the company has had to patch everything from microphone malfunctions to an issue that rendered iPhones with third-party screens unresponsive.
By contrast, Apple made a concerted effort with iOS 12 to add stability and improve the performance of older iPhones rather than introduce superfluous features. Turns out if people aren't worried about an update accidentally ruining the functionality of their device, they're actually willing to download it.