I'm playing DVDs on my i686-linux box using Mplayer w/ mplayer using about 15% of my cpu cycles, while XFree86 is using about 40% of my cpu cycles to render the video.

Is there an nVIDIA card I could use to take some of the burden off of XFree86?

I've heard that mplayer can send the video directly to a graphics card's TV-out port, thus elminating the XFree86 rendering. But I want to play the DVDs onto my computer monitor while having other windows on the screen for other things I'm doing.

What might help using dvd-playback is XvMC. It is a new special library for mpeg2 decoding and it provides motion compensation. Note that you need a XvMC capable player (XvMC != Xv), not sure if xine and mplayer already have support. (there was discussion about this some time ago ..)

Further your videocard needs XvMC support. All Geforce4 MX and GeforceFX cards have full support including IDCT and motion compensation; Geforce4 Ti cards only have motion compensation support. All other cards (except for the quadro equivalents of the GeforceFX and the Geforce4) lack XvMC support. I hope this helps.