A lot of interesting points made here, but this is how I see it...
Right now, I think the X1950XTX is probably the better card for the money. However, once DX10 titles start to make their debut the 8800GTS 320MB may just prove to be the 7900GT of '07, or it may just prove itself to not have enough RAM to handle DX10 games realistically. Still, with the 8800 you actually have the chance of running DX10 games, whereas with the X1950XTX you don't. So, if I was considering the two aforementioned cards for purchase, I'd still go with the 8800GTS 320MB.
There are actually a few interesting (IMO) ironnies with this card:
1) Why, in a world of the FX5200 512MB, do we see the currently most powerful GPU getting paired up with less RAM?
2) This card would be pretty ideal (and would fit that 7900GT niche) for the frequent upgrader, sadly enough the people that buy "budget minded" higher end gear are usually not the most frequent upgraders and usually are looking for a long term bang for the buck. Two years from now there will be some people kicking themselves for not coughing up the extra $50-80.
3) This card is targeted to the somewhat novice high end card purchaser or the O/C speed demon deal hunter, but honestly I think more towards the former. Ironnically, the novice segment is most impressed with RAM size and will most likely opt for the aforementioned FX5200 512MB over the 8800GTS 320MB because, well "it's got more RAM for less money".