I own a 7970 and if i could go back in time, not buy it and had the option to buy either now, i'd go with the 680. I've seen slightly better results with the 680 gtx in the majority of games especially the ones i play like BF3. If you can get it near the 500$ then snag it asap, EVGA is known to have great customer service and Nvidia drivers are known to be fairly smooth relative to ati drivers
Nvidia's drivers are surprising me with the constant support for older models, brining new features to 5+ year old cards and the 680 has the better performance in most games and is also touted as the only card (GK104 in general) to run the new Unreal Engine 4 in it's full.
So with all those the safest bet is the 680. You won't have any regrets with it as long as you are getting close to MSRP of $500.
I really like 680s. After the Radeon 5000 series and all the driver issues I had with crossfire, I can't say I'd go back to AMD any time soon, but I have really been thinking about picking up a 7970 just to try it out.
Havent owned a 680 yet, but have owned 4 7970s at various times since their release. Havent had ANY driver related issues, even in crossfire. The performance are similiar between the 2, actually the king of the price for performance card right now is the 670. I wouldnt sell my 7970 to get either a 670 or 680, I rather like being able to max OC a card on stock voltage
Not to mention that the 680 is quieter and draws less power. You may want to consider the 670, a hundred bucks less for 95% of the performance. Overclock it a bit and you have the 680's performance. And if you get one with a custom cooling solution, it will be quieter still.