Regarding distros, I started with RHEL, then went to CentOS, Ubuntu, and Mint. I also tried a number of others along the way, but in the end, Mint has proved to be the most reliable and easiest to maintain, both on my IBM server and on my client machines.
I mention CentOS, because up until version 7, this was one way to get true Gnome 2, which I really liked. But CentOS became too much of a headache, and for the past few years I have used Mint.
Because true Gnome 2 is no longer readily available, I have tried most of the other DEs (Gnome 3, Gnome fallback, Unity, KDE, Cinnamon, MATE, Xfce, and some WMs (WM, Awesome, xmonad, i3).
I used KDE for a while, but found it somewhat buggy and it used too many resources for some of my underpowered machines. I didn't like Unity or Gnome 3, didn't like Gnome fallback/flashback as much as the original Gnome 2, Cinnamon was too unstable, MATE was good but not quite to my liking. The various WMs were just a tad too minimalist for me. I have finally settled on Xfce. I like its clean, 2D look. Xfce does almost everything I want or need in a DE. The only thing that it doesn't do as well as I would like is handle multiple monitors. KDE is the supreme DE for handling multiple monitors -- doing things like having the primary monitor on the left and keeping desktop icons on my choice of monitor. However, the simplicity of Xfce is so good that I can get by without the complete multiple monitor management that I would prefer. And, yes, there is some compositing available in Xfce.
One note of caution about Xfce. I have tried it as an add-on in Ubuntu, and I have tried the Xubuntu implementation. I could never get it to look quite right. However, the Mint implementation of Xfce in the Xfce edition of Mint is superb -- it makes Xfce look great right out of the box, so to speak. Because of this, I use the Xfce edition of Mint, which is already tweaked just the way I like it.