While you touched on XInput (and yes, it is simpler to code for, it allows on the fly plugging, and the controls are all mapped explicitly by name - you always know which one is the red button, for example), there is one problem with XBox pads on PC games that don't explicitly support it.
XBox game pads map the analog triggers to a SINGLE axis for DirectInput games. For some games, this is just fine: older racing games may expect to see a single axis for brake and throttle, for example. However, most of the games I use my game pad with require that I be able to press the left and right trigger at the same time.
So one thing you should have in your arsenal is a program like Xpadder. The idea is pretty simple: Xpadder lets you map your joystick buttons to keypresses. This makes it a lot easier to play racing games like Trackmania, for example, which don't have support for Xinput.
I've also found Xpadder great for playing older games like the classic Tomb Raider games, which were written when joysticks had 3 axes and 2 buttons - if you were lucky.