I use KDE exclusively, so perhaps some others here can help you more immediately and specifically. However, some additional thoughts:
Look in
/usr/share/apps/kdm/sessions and verify you have files called
xfce.desktop and
xfce4.desktop. I'm guessing you do since you are already trying to select that option from within KDM.
Try logging into Xfce from the KDM as you described. When that fails as you have described then leave things hang for a moment and toggle to a plain console (
Ctl-Alt-F2/F3/F4/F5/F6 etc., depending upon how you have your system configured). Then type
ps ax and see if you have a process ID for Xfce. If you do then you know that some kind of effort is being made to start Xfce.
While you are in console as root, inspect your user account for a config file called
.dmrc. The file is very small so just
cat home/user-name/.dmrc and you hopefully will see that the KDM has selected Xfce as your GUI. The file should look something like this:
[Desktop]
Session=xfce4
The problem might be the file search path:
http://docs.kde.org/stable/en/kdebas...-with-kdm.html
If so then you might have to edit the
xfce4.desktop file.
Try starting Xfce from run level 3 and
startx. If that poses no problems then you know that Xfce is installed properly.
To run Xfce from console/startx, rather than KDM, you'll have to first run
xwmconfig. If you xwmconfig as user and not root the tool basically copies the
/etc/X11/xinit/xinitrc.xfce file to your home directory and renames the file
.xinitrc. The startx script will see that this .xinitrc file exists and use that file to determine the appropriate GUI to use.
FWIW, on my box I can't get into TWM from KDM. Works fine from console/startx. That is the only other GUI installed on my box other than KDE. Thus, my testing ability is limited. Because I use KDE exclusively I am weak on playing with multiple GUIs from KDM. Hopefully that will change soon when I hopefully install Slackware on a second box and can experiment more.
I hope this helps.