For Windows, what's actually happening is that your user profile is getting copied to the system. Which is why logging off takes so long -- the profile is getting copied back to the server.
Do this on an underprovisioned and busy network, or worse, one on which work cycles are highly synchronized (e.g., students, in standard class blocks, over the course of a day), and where account profiles can grow without limit (at one point I had tools to ID and prune large profiles), and things go all to hell.
The Linux / Unix model actually can be quite useful, and it isn't too dissimilar from my own initial experience: console logins to the campus Unix network from dumb serial terminals (precisely zero local state).
Sun Microsystems did some work with this (in conjunction with their own hotdesking workplace experiments) as well.
The downside is when you're doing highly compute- or data-intensive work, in which case the amount of information transferred across even NFS links becomes problematic, and/or you need to provision some really beefy servers. At that point you likely want some sort of shared batch compute resource. Again, more easily accomplished under Linux/Unix than other platforms.
So my information may be somewhat dated. Still generally harder to do this under Windows than Linux.
I don't know what's wrong with corporate enviroments, that Windows profiles take so long to roam. That seems to be true to all of them. Also, corporate IT has an extremely irrational aversion to simply installing the software on all the computers for once. Even when it's free software, or things that everybody uses. That also repeats everywhere.
Certain people refused to put their big files on the network share because they said it took to long to load and then complained that their roaming profiles took to long to load because they had those big files on their desktop.
This is where the ability to have automatically configured (puppet / chef / ansible / cfengine) clusters of servers for 'Nix hosts, or NFS-mounted /usr, so much more powerful.
The machines were pretty much stateless. When you booted a machine you could choose between Windows, Linux, or reset the whole machine. The third one was what you did when the machine acted funny, it would wipe the hard disk and reinstall both OS' from a network image. The whole process was completely automatic and was done in 20 minutes.
So it was real hot desking, and it worked great. You sat at any computer, it became your computer. Way before Google started to talk about stateless computers and their chromebook.