The thing is, I'm not looking to play hardcore games at maxed out settings (I'm perfectly fine with Medium or High) so I don't think I really need a top of the line GPU. Right now, I'm comparing the 560 to others around that level (GTX 660, Radeon 7850/7870).
What I want to know is, generally speaking, whether it is better to get the high-end version of the 560 or the low-end version of the 660 (http://www.newegg.com/Product/Product.aspx?Item=N82E16814130826) which is still more expensive. Or if you have any other suggestions I'd be glad to hear it. Also, I am using a 23" 1080p monitor.
The rest of my build:
CPU: i5 3570K
Mobo: Asus P8Z77-V PRO
RAM: G.Skill Sniper 8GB (2x4GB)
Storage: WD Caviar Blue 1TB
PSU: Not decided yet; will depend on GPU
More about :high end gtx 560 2gb low end gtx 660 2gb
That 560 is a low end card, the 660 gtx is a mid-end card and from a newer generation.
The 660 gtx is much better than the 560 gtx, 560 ti and even 570gtx.
It has the triple of the cuda cores and has consumes less power.
The obvious choice will be the 660 gtx.
The only card who can do better but not by much is the 7870 and it is at a lower price, but by the looks of it you prefer nvidia.