Get the X800XL. At higher resolutions with AA/AF, the 6600GT can't keep up because the memory isn't shared between them. In SLi, one card renders even number frames, and the other renders odd number frames (you can have it set up so that each card renders half of the frame, but it has worse performance). Two 128MB frame-buffers can't hang with one 256MB frame-buffer when the res/detail/AA/AF is too much for one card. PS 3.0 has done nothing yet in terms of performance, so you can only talk about the future. By then, both cards will be obsolete anyway, so it shouldn't matter too much for your decision. The X800XL can be had for $300 now:
Proof. Which makes it $100 less than two 6600GT, or one 6800GT, not to mention the added price of an SLi mobo. SLi doesn't work with every game out, so that is another thing to worry about. The 6800GT is $100 more, and the add another card for SLi in a while isn't a good deal because:
1) A different brand card or revision with the same manufacturer may or may not work (it won't work now, but newer drivers may change that),
2) Prices don't get lower over time, they stay the same until products just get discontinued. For example, look at 9800 XT's, they aren't commonly sold anymore, but if you want to buy one retail, you have to pay $370+ to get one, but a 6800GT will run circles around it for the same price, and an X800XL will do it for less. (So will a 6800NU, just not as much.) By the time you want another 6800GT (let's say it costs $300), the next generation of GPU's will be better, especially at newer games. Think about this, what would you want more, one 6800GT/X800XL, or two (pretend ATi had SLi) 9800XT's? I bet a GeForce 7800/Radeon 11800XL will be better than two 6800GT's in newer games (next generation). In older games (this gen or before), the performance may be equal though.
Just my analysis of the video card market. Take it or leave it.