If you're not on a budget, get the GTX 570, you'll be able to squeeze more FPS(10-20) out of it & it can also be overclocked quite a bit, but so can the 560. Here's a comparison: AnandTech - Bench - GPU11
While I can't comment on ATI cards(don't use them that much), I can recommend some Nvidia brands.
PNY, ASUS, Msi or Gigabyte all good brands, but try getting a card with at least twin fans & highest warranty(some cards have lifetime warranty). If you're not comfortable overclocking, you can always get a factory OC card.