Not true. You can have multiple VNC server/desktop session running on the same box, each listening on a different port, each with it's own user controlling it.
In OS X case, it's running the Finder.
If you log in as a user on Linux, and launch vncserver as that user, then that VNC session and desktop will be of that user.
One of the huge advantages is that the state is also maintained on the server. I've used it a LOT to install various Oracle software over the years. Fire up a VNC server session as an Oracle user, connect into it at the client site or office and start the installation. You can then disconnect, go home, do whatever, and connect in again remotely from another location (tunnelled over SSH usually), and the install will still be there running. It might have paused waiting for a dialogue to be answered, but it hasn't killed the install like logging out of the main desktop would have done.
You can also set the colour depth to be used by the client, thereby increasing performance over crappy SSH connections. 8-bit colour takes WAY less data than 32-bit, especially when installers have stupid meaningless animated gifs that run all the time.
On X Windows (X11) VNC runs 'more natively' creating a new desktop for you when you remote in - each new connection creates a new desktop instance for the user logging in. It's actually more configuration work to make it view an pre-existing desktop session :)
Much of OS X's value comes from taking Unixy technologies and making them much easier to use.
But they could always just throw a beefy machine in a closet and have it connect to the same network directory service that the lab machines grab their user accounts from.
My old university did the same thing, but did so nearly a decade ago with a Windows terminal server.
(My university does this... pretty much so engineering students can use matlab at home... badly winces)