The Q6600 will work exceptionally well with either 8800GTX or Ultra. The quad core can push the Ultra card well since it has more core to work with. Dual 8800GTX's would cost more, and will yield excellent performance in almost any scenario. I think that the 8800Ultra is the 8800GTX, just clocked a little higher.
Getting an 8800 GTX or Ultra will work with what you have and you'll see an increase in performance regardless of what CPU you have in reality. Of course, the faster the CPU the better performance. No brainer there. As many have said, ANY CPU will bottleneck the 8800 GTX, but this is no different from any other video card on the market. As long as you have a PCI-E x16 slot and DDR400 or higher, you're going to be fine. But use common sense at the same time. If you're going to drop $650 on an Ultra for a Pentium 4 3.0Ghz, you might want to rethink your investment.