Can someone enlighten me on the way font appearance (hinting, antialiasing) works? As far as I understand,

There is .fonts.conf

There are individual font settings for Gnome, XFCE and KDE (or do they just modify .fonts.conf; or else where do they keep their font configurations?) For XFCE, it is in ~/.config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml for example.

Then there are .Xresources and libXFT.

Then there is some info regarding BCI which is not enabled by default, however this seems rather obsolete as far as I understand.

Finally, there is the issue of a DPI setting, which I can specify in Xorg, or in each WM.

I am confused as to which setting is used when. To add more confusion, some terminal programs have an option to antialias fonts.

It seems that .fonts.conf is the best of these options; but still with a .fonts.conf the appearance seems to differ under different WMs.

I'm not exactly sure how much of the below is truth, but it is how I understand these things. Comment/edit/correct if you like.

/etc/fonts/local.conf, /etc/fonts/conf.d/ and ~/.fonts.conf are for freetype2. They handle font substitution, per-font settings, all that stuff, and they apply for FreeType no matter where it is used.

Xft X resources only apply when FreeType is used in X through libxft. They override fontconfig settings.

GNOME font smoothing settings are just passed to Xft when gnome-settings-manager is started. They override settings specified in X resources. Probably the same in KDE and Xfce.

Terminal emulators using libxft, like any other program, can tell it to use specific settings (such as 'disable antialiasing'), probably per-widget or something. (In Windows, programs can opt out of ClearType too.)

WM means "window manager". Window managers only care about managing windows, I haven't seen one that would touch my font settings. (Try starting metacity, xfwm4, compiz directly, you should see no difference in font rendering.)