Well, until my X-Fi arrives, I'm stil using onboard AC97 and I've made some adjustments in foobar2000 which I believe have made my music sound better.
First of all, in the Playback menu, I set "Output data format" to "16bit fixed-point padded to 32bit" Then I turned "Dither" on and selected "strong ATH noise shaping"
In the DSP section, go to "Resampler" (the one before "Resampler (PPHS)") and set the target sample rate to 48000 Hz. I also have "Slow mode" enabled, but depending on the speed of your CPU, that may use up more processes than you want.
Then make sure to add "Resampler (SSRC)" to the Active DSPs. I also like to use an equalizer to adjust the sound for my headphones. I personally like "0 -1 -2 -4 -5 -6 -7 -6 -6 -5 -5 -4 -3 -2 -1 0 0 -1" but you can play with that until you get the sound you want. I also have Crossfeed turned on when I'm using my headphones.
I think the biggest improvement came from enabling Kernel Streaming. Go to the Kernal Streaming menu, under Output, and make sure AC97 Audio is the selected device. Then go to Output, and select Kernel Streaming.
Well, that's how I've adjusted foobar for the best sound on my AC97 onboard. But really, you should look into a soundcard.
Goodluck