I agree with everything you've said (with the exception of speed in many cases), and I would add: easier to maintain. Even supporting multiple browsers is NOTHING in comparison to supporting millions of potential OS/machine configuration installs.
That, and the fact that your app can be available everywhere without having to have it on every machine you want to use it on.
The 'speed' thing is mostly because we have so many inexperienced programmers writing web apps in the world - it's easy to publish these days but I don't think there is that much focus on making your app run really well. It's mostly UI focus. For example you can use Bootstrap and it handles a lot of UI, but most coders don't know what that UI framework is actually doing. Not slamming Bootstrap at all, just using that as an example that many people would know.
I never had much trouble supporting those 'millions of potential OS/machine configurations' but keeping a web-app on the rails for multiple browsers + mobile is the stuff of nightmares. It is almost as if they break things on purpose.
That, and the fact that your app can be available everywhere without having to have it on every machine you want to use it on.
The 'speed' thing is mostly because we have so many inexperienced programmers writing web apps in the world - it's easy to publish these days but I don't think there is that much focus on making your app run really well. It's mostly UI focus. For example you can use Bootstrap and it handles a lot of UI, but most coders don't know what that UI framework is actually doing. Not slamming Bootstrap at all, just using that as an example that many people would know.