Microsoft actually has this nifty thing meant for IT admins called App-V, that allows you to create immutable application packages that execute in an isolated environment where changes made to the local system default to copy-on-write and are redirected to a centralized location (including both filesystem changes and registry changes).
It's actually been integrated into Windows 10 Enterprise edition for quite a while now, and I personally use it to package up a lot of the apps I use on a daily basis, delivering the packages through a network drive and synchronizing the centralized state store with Syncthing for mostly seamless cross-device roaming. (You can download the App-V Sequencer from the Windows 10 ADK to package some apps to try it out for yourself, if you happen to have a copy of Windows 10 Enterprise: https://docs.microsoft.com/en-us/windows-hardware/get-starte...)
This actually works fairly well for most apps, but unfortunately the isolation isn't perfect, and some apps for inexplicable reasons manage to get around the App-V sandbox and read/write to the local filesystem directly (Especially apps that have some kind of licensing mechanism, where licensing state can't be properly isolated and synchronized. Though you could definitely argue that's the licensing mechanism working as intended, in my view it still represents a technical failure on the part of the sandbox that this can happen), forcing me to install them locally instead of keeping them as isolated App-V packages.
I was hoping this would basically be App-V but with better isolation through the lightweight virtualization layer they built for windows containers (and with less restrictive licensing. Seeing lots of valid criticism on licensing here, but from where I stand, Pro and above is still much more accessible than App-V's Enterprise-only), but looks like they can't quite serve the same use cases just yet.
App-V isolates state changes, but those isolated state changes are persisted on disk, so when properly configured, you can use an app across multiple sessions, closing and reopening at will without losing state, as if it was locally installed.
Sandbox also isolates state changes, but those state changes seem to be ephemeral and will be discarded upon closing the app. This means it's only useful for running apps that are mostly stateless or for experimenting with untrusted apps. There's nothing wrong with serving those use cases, but to someone who's been feeling the pain from App-V's poor isolation, and someone who's been watching immutable application ecosystems like Nix, Guix, Flatpak, Snaps, etc, flourish in the Linux world, it does seem like a missed opportunity. Definitely hoping they're planning to extend it to also support the same use cases as App-V in the future.