Ok, let's try to make it short and not get into an (ugly) troll.
GNOME is the most common environment currently (let it be known: it's not mine ;)). It uses the Gtk graphical set (for Gimp ToolKit, since it was created for Gimp initially). The main idea behind GNOME is close to the idea behind UNIX systems generally: one program = one function. Each program has a specific use, and programs generally don't try to do more than they should. It is quite common that programs implement their own way of managing data, too. As far as style is concerned, people who don't like GNOME usually dislike the look and ergonomy of its dialog boxes (open/save/etc.)
KDE is another very old desktop environment. In fact, GNOME was originally created to replace KDE because KDE is built upon Qt (as a graphical toolkit), which was not open-source at the time (but now is). KDE is a huge, unified project, which has quite a different approach from the GNOME project. Many programs in KDE do quite a few things. It is not rare for KDE programs to get quite big and multi-functional (see Konqueror for example). Some like that, some don't. People who don't like KDE usually say it looks & feels too much like Windows (it really depends on the style/theme you apply in fact) or it looks childish. KDE has changed a lot in the last few years with the release of the KDE4 series, which is still a bit unstable (compared to what KDE3 used to be), but got quite usable with since release 4.3.
XFCE is a lightweight (although not at all the most lightweight) environment. Xubuntu was initially created for old machines that couldn't run GNOME or KDE properly. XFCE uses Gtk just like GNOME, and quite a few programs from Xubuntu are actually the same as in Ubuntu, or sometimes lightweight versions of them.
In general, it is better to avoid mixing environments, not because we're just extremists people who choose a side and don't depart from it, but because it loads more graphical libraries each time (Gtk and Qt mostly). As I said, KDE is generally a more unified environment, so it also pulls more dependencies between programs, which means installing a KDE program in a GNOME environment might make it feel quite heavy when all the KDE libraries load for just one program, while loading a GNOME program (such as Gimp) inside KDE won't be so heavy since Gtk programs don't interact as much as KDE programs do. I run KDE and I don't care to load Gtk programs when I (really) need, but GNOME users often complain that KDE programs slow down their desktop experience.
In the end, it's about where you feel best after trying a few of them (you might also consider E17 and openbox, for the fairness of mentioning these other famous environments).