Right now, 8600 at 3.33ghz will play most games faster than q8400 at 2.66ghz due to its faster clock speeds as most games are still only 1/2 core optimised, but a few games a re multicore optimised like supreme commander ect, where the extra two cores on the 8400 will put it in the lead.
Alos depends on your GPU setup, if you go CF 5770 or greater or sli 260 or greater then Q8400 is better.
The e8600 will overclock to 4ghz with good cooler and Mobo that can go fsb 1600 easily and the q8400 will go to 3.2ghz on 1600 fsb. (multiplier 8 * fsb 400 = 3200mhz)
If you have a good Mobo (p43 45 x48 chipset or good x38 p35) with good psu you are probably able to get that q8400 up to 3.8ghz ( 8 * 475 = 3800 mhz) but that is if you have good cooling and Mobo that can overclock with good Ram dividers in bios and good ram + stable power.
over all I would side with the q8400 as time goes on and more applications are coded for Mulit core it will last longer in my opinion.