The Newest cards out for Nvidia and ATI are both great. None is better then the other, except the Nvidia uses Pixel Shader Technology 3, and ATI does not. What does this mean? Nothing right now. no games are planning on using this feature as it is deemed unnecessary unless they are trying to impress people then they may include it.
Compatibility is fine for both and both carry the newest technologies frequently used in high end games such as Far Cry. Basically you cant go wrong either way.
Personally i prefer ATI products as their drivers are always more stable. Recently ATI has slacked in that department, but possibly due to the X800 release. I run a newer Radeon (9700XT) and i never seen nicer looking graphics on a computer for any game in my life, i can only imagine the X800. I will buy the Radeon myself because they are tried and true for me. Nvidia cards i had just never worked as intended and since my switch to ATi ive never been happier.
As for unreal working better on Nvidia, i dont doubt this. It is due to Pixel Shader 3.0, and the fact some game companies lean towards certain card companies. Although impressive most articles ive read have said the industry plans on staying away from PS 3.0 due to the many more million instructions needed to program in.
I could be wrong, consumers could be wowed by PS 3.0 which would force companies to include it on all cards, depends on how the masses react i suppose.