You can get some diagnostics on what's happening with startx as follows:
$ startx >X.out 2>X.err
Any console output generated by startx will go to X.out and any error messages will go to X.err. If it still hangs you can reboot and look in those files for any clues as to what's going wrong.
Paul.
Thanks, but how will I find those files afterwards? I'm not too hot on command line - I can navigate but don't know how to search for a file... can you help with that?
They will be in the directory that you ran "startx" from (your home directory if you've just logged in). This is just regular output redirection, nothing fancy about it.
Paul.