I can tell you that that behaviour is learnt. People unfamiliar with classic desktop paradigms find annoying and confusing to have to confirm a choice they’ve already made.
The most intuitive setup, imho, is to apply the change immediately, but also materialize some sort of UNDO button to revert back.
Sometimes you are doing multiple changes at once, at which point it's better to have an apply. Take a game. Change the resolution, delay. Change the textures, delay, Change the shadows, delay. Change vsync, restart. I could wait the 30 seconds between every click twiddling my thumbs, or I could just click it all at once and restart the game.
This makes sense when applying changes is expensive. If applying the changes is cheep (or invisible while the settings dialog is open) then you don't need the confirm step and you can do it immediately or when the dialog is closed.
Windows itself is an offender in that regard - e.g. the setting to select when updates are (and aren't) installed is a modal dialog that itself requires confirmation. And on top of that, it has two time pickers, each of which has separate scrolling columns for hours and minutes, but then you also have to press the "Confirm" button to actually apply changes after you scroll. And if you just click away to get back to the dialog, it 1) doesn't prompt to save changes, and 2) doesn't apply them.
The most intuitive setup, imho, is to apply the change immediately, but also materialize some sort of UNDO button to revert back.