I've been very impressed with XFCE. It's proven to me that there should be equal weight put into:
1). The overall quality of the software.
2). The stated intent and goals of the project behind it.
The latter turns out to be pretty important, and as with so many things in life it isn't until a forcing function causes you to consider assumptions you had (that project X, Y, or Z would never do A, B, or C) that you realize those assumptions were merely assumptions, never stated intentions, and all of the risks that go along with that.
I enjoy using the Linux kernel because I know at no point is Linus going to turn around and throw it all away, and I enjoy XFCE as an interim solution for all of the same reasons.