Am a Windows and Linux user.
There are two main reasons I run both systems (not yet the choice of distribution base, let alone DE):
1 - I'm a gamer
2 - Hardware compatibility
1st one is easy: 90% of my games run fine on Windows, yet when you do attempt to run them on Linux, welcome to the roller coaster ride of your life
2nd one: Ignoring the different approaches of base distributions in terms of hardware, and even using latest available kernel/manual kernel optimization built from ground up specific for your system, you are bound to face some hiccups when it comes to drivers compatibility (and we ain't yet touched open source vs proprietary drivers...)
So since the two reasons above dictate that I should technically run Windows, why do I run Linux too? well easy answer is Hobby.
Great that's out of the way right? Except Linux is not as easy as 1 base system and few desktop environments. Nope. For a Linux user, depending on your knowledge you have to decide on:
What base do you want?
Do you want Stability? Head over to CentOS (RPM packages based) or Debian (Stable branch) - just forget you have the latest version of anything (easy price to pay unless you start straight away to suffer from drivers issues etc)
Do you want latest and greatest software? Head over to Arch Linux, Gentoo and Fedora (Debian Unstable/SID branches to a certain extend)
Do you want a balance between stability and updates software? Head over to Ubuntu/Ubuntu official variants or Debian (Testing branch) or even OpenSUSE
Great you made a choice right? Hold your horses, 'cause there is more:
How is your Linux knowledge and how far can you handle yourself with maintaining one type of system?
Beginner: head over to Ubuntu/Ubuntu variants or OpenSUSE, but remember: Ubuntu uses totally different commands than OpenSUSE.
Some knowledge on some basic systems: more choice: Debian Stable, Ubuntu/Ubuntu variants, OpenSUSE, CentOS (the basics of CentOS that is)
Intermediate and advanced: all of the above plus: Debian Testing/Unstable/SID branches, Fedora, Arch Linux and Gentoo (because the nature of such distros base, when something breaks, you are expected to know how to dig the error out, research and fix, as opposed to just roll out a backup and boom, never ending loop of issues.
We are finally there but still, 2 more decisions to make:
Default distributions configurations and which Desktop Environment or Window Manager?
Some swear by Ubuntu and Ubuntu family, but others prefer how other authors did spinoffs of the base Ubuntu
Some swear by Arch Linux, while others say Manjaro (yet not aware that Manjaro team does test packages longer than Arch based, so there is a window of usually a week before the same package that is available in Arch official repos are available in Manjaro repos)
Some like a distro based on its DE/WM configuration
Others like to mix Debian Stable with Debian Testing
Others prefer Debian Unstable/SID as its closer to bleeding edge rolling release found in Arch/Gentoo
Now onto DEs/WMs (NOTE: considering vanilla state, not configured and tweak by authors):
Gnome Shell: Users love or hate, no middle ground - resource usage is high but thats not the issue. The issue is the amount of GNOME dependencies tied to it. A bit of a hassle to do some cleanup
KDE: will say out front: Arch already recommended to upgrade to Plasma (KDE 5), but aside from the total difference between KDE4 and KDE5, Plasma is still a bit buggy (don't worry Gnome wasnt a breeze between the point releases of GNOME 3). KDE dependencies? Don't know where to start (tho KDENLIVE is a hell of a program, I give them that)
Cinnamon: Linux Mint team take on a Gnome Shell to create a new DE. Uses nearly same as Gnome Shell in terms of resources. Not as mature and Gnome and although there has been improvements since its first release, still has a lot of Gnome dependencies and not a common DE found outside Linux Mint spinoff's of Ubuntu based system
XFCE: for a long time, it was considered the DE which would just sit there while the war was always between Gnome vs KDE for all the bells and whistles, customization etc.
XFCE was and still is however a great DE and uses way less memory and cpu tends to be quiet than any of the above. Does pull some Gnome dependencies but way less and suitable for old hardware
MATE: Linux Mint's fork of Gnome2. Bascially now they trying to completely move away from Gnome2 dependencies. Former native Gnome2 applications where renamed and basically gave the Gnome2 hardcore fans who didn't like Gnome3 some hope. Tends to be a bit more busy in system resources/cpu than XFCE but thats about it.
LXDE: less bells and whistles than XFCE but in turn you get a lighter DE which runs well on old machines. Well, LXDE is composed of LX modules + Openbox window manager, so thats where the lighter than XFCE comes from
Pantheon: Only found in Elementary OS, built from scratch DE, based on Gnome Shell.
Unity: Ubuntu's own response for the Gnome3, another love or hate type of DE. Found also on Makulu Linux by the way.
Trinity: Spinoff of KDE3. Why you say? well KDE4 launch wasn't as smooth as one might think. shares shames pros/cons of KDE4 and KDE5. Trinity is found on some distros, usually based on Debian.
Window Managers (too many to list, so will omit quite a few):
Openbox + Tint2 Panel or with XFCE panel or LXpanel - Light as a feather but prepare to dig into config files to manually configure menus etc (obmenu etc). Tint2 Panel in particular = more configuration - stacking window manager
Fluxbox - Blackbox fork originally - another stacking window manager which is light, and once fully configured via its config files, looks nice
IceWM and JWM: two separate stacking window managers, light as feathers but not appealing to the eyes on first glance
i3: dynamic window manager - stacks and tiles, shortcut based window manager, not to hard to configure at all and easy to use, granted you have read the documentation
awesome: another dynamic window manager, however unlike i3, if you want to theme it and tweak it, prepare to spend some time in its config files and or pull some already done configs from users via github.
Tiling only managers: forget about any easy to use beginner friendly, but will list some: ratpoison, dwm, spectrwm
Also, one thing to look at window managers: how exactly you want to customize etc.
So based on all the above, once a user has some basic knowledge on Linux, you are presented with countless choices. This is why I said I run Linux as a Hobby.
I can manage Debian/Ubuntu/Fedora and Arch to a certain extend and if anything breaks I can fix it, also ran in the past a mix of Debian Stable, Testing and Unstable branches (not recommended unless you know what your doing); know how to flag packages in Arch not to be updated etc; however I can truly say I have not delved into Gentoo due to 2 things: Time and knowledge.
As far as DE/WM goes, I have only been able to easily work with i3, configured Openbox with Tint2 Panel and did an ok job configuring Fluxbox.
Other WMs I have tried and well its too much to learn to use it. Bad enough that what you know of Debian/Ubuntu cant be easily applied to say Arch linux as commands are different etc.
One recommendation: always build your system from ground up once you have been familiar with it, which means manually installing xorg, customizing your kernel and only pulling the sofware/packages you want and know how to look for its dependencies.