Today's X rarely requires manual configuration. X now automatically configures itself with reasonable defaults. Both GNOME and KDE provide GUI utilities for customizing settings beyond these defaults if you like.
However, sometimes you need to muck with the configuration manually, beyond what these tools allow.
Most systems don't ship with an X config file any more, but sometimes you need one. Here's a basic skeleton:
Section "Device" Identifier "Configured Video Device" EndSection Section "Monitor" Identifier "Configured Monitor" EndSection Section "Screen" Identifier "Default Screen" Monitor "Configured Monitor" Device "Configured Video Device" EndSection
Configuring using xorg.conf.d (Ubuntu 10.04 and newer)
Files ending in *.conf in the /usr/share/X11/xorg.conf.d directory are automatically loaded by X at start prior to reading the xorg.conf. These files can each contain one or more Sections in the same format used by xorg.conf.
Users can continue making custom configuration in /etc/xorg.conf as usual; the .conf snippets are mainly there for the distro or hw vendor to ship default InputClass rules and custom overrides.
Session Startup - .xprofile, .xsessionrc, .gnomerc
Rootless X - Running X as a user process, not as the root user
Xorg On The Edge - for bleeding edge packages
http://www.intellinuxgraphics.org/dualhead.html [dead link]