What I understand is that people that use multiple desktops they do because they might have 2 apps not fully maximized in desktop 1, another 3 in desktop 2, etc. But for me, I have maximized maximized apps 99.9% of the time, so I can not see and advantage on alt-tab to another app vs shift-alt-tab (or whatever the option) to switch desktops. Or am I missing somthing here?
In the desktop-centric organization, many people also have 1 app per workspace most of the time (I think). In a tiling WM, the app will take the full screen estate if it's alone there, so it's also maximized.
The difference with alt+tab is that switching to another workspace (which represents a window if the workspace has only one app) is deterministic, given the right keybindings setup and if we have some habits regarding the placing of windows.
So 99% of the time I have the same placement of windows in workspaces. At the very least my main Firefox on destkop 1, Code Editor on desktop 2, a terminal (related to my coding task) on desktop 3, and then things get more "dynamic", maybe some extra term or other stuff I may need for my task on desktop 4, 5, ... With the bindings Super+<number> (number row on top of the keyboard), I jump directly to my workspaces(windows). With my left hand I hit Super+1 and it will always show Firefox, Super+2 vim, etc...
I prefer it to cycling through alt+tab, hitting Tab multiple times until I find my window. Here's an example of a flow I was doing just earlier today:
win+2 (editor) : I edit code
win+3 (term1) : run command to build or run tests or deploy...
win+1 (firefox) : refresh the app I just built, click somewhere, test...
win+3 (term1) : see that the build actually failed
win+4 (term2) : check a quick solution in another term, use a CLI tool, do some tests in a repl...
win+2 (editor) : fix code
win+3 (term1) : build
win+1 (firefox) : refresh, prepare the page (input some text or something, ready to click a button)
win+3 (term1) : check if build finished
win+1 (firefox) : click the page button to test my change
The idea is that each time I switch to a different desktop/window, I just go there directly, without thinking, as I know where they are. The example I gave is the natural way I use my computer (with i3 or dwm, but can be configured with KDE, Cinamon...), so it's not a far fetched example at all (in my case). Switching back and forth is extremely fast that way. A long time ago, a colleague even told me I was a bit hard to follow when in pair programming sessions so now I try to slow down a bit. With Alt+Tab it's not as smooth, as we'd have to cycle through 4 windows. With the default implementation of most alt+tab out there, it's the opposite of deterministic, there's some logic (that I never fully understood) to go back to the windows in the order of last used/focused windows. But I know that in KDE at least it's possible to configure the behavior of alt+tab to make it loop in a "dumb" predictive way (1->2->3->4->1->2...), so in the end, it's again just a matter of personal preference.
If the bindings were less optimized (shift+alt+<number> or something) it would get uncomfortable to use. I use the Super modifier ("Windows logo" key) as the basis for all shortcuts related to my WM, so it doesn't conflict with the shortcuts reserved by the apps themselves (apps may interpret the modifiers Alt, Option, Shift, but not Super). It's a bit of finger-stretching to reach desktops higher than 5 on the number row, and at some point I need my right hand, but it works fine for me.
You're also correct that workspaces allow for more windows (very useful the 1% of the time I need it), and in that regard a workspaces organization is not comparable to a alt+tab based flow.
Organisation. Personal windows on one desktop,work ones on another, for example.
For me, a desktop is a logical group of programs for something I'm working on, not necessarily a specific layout of non-maximized programs. This also allows for less pollution of programs when Alt+Tabbing, which you might benefit from.