Only problem is that this has become so ingrained that I keep doing it on computers without this setup!
I use desktops to partition stuff so there are manageable amounts of Windows at a time.
Hide away your email and other interruptions until you're explicitly ready to go look at them. Out of sight, out of mind.
Multiple projects. I have a legacy app I support and a new-development project I spend most of my time on. I can spread the work for each of these out across multiple windows on multiple desktops, and switch between them when I'm ready to context-switch. When I do, everything is laid out exactly the way I want it.
I'm back on Windows for now, but great multiple desktop support is the thing I miss most from a Linux desktop.
Ideally I'd have four dedicated monitors - but on my one work monitor I'd settle for four virtual desktops that I can cycle through similar to alt+tab.