As both games are completely different the only way you could decide which one to buy is to ask yourself what your in the mood to play. If you want a game that looks beautiful (in a post nuclear sort of way) as amazing game play and a fantastic story (one of the best for a fps) then buy Metro. If on the other hand you want a game that looks amazing (if not a little over the top) as a decent story plays well and gives you stuff to do off the beaten track then go with FarCry 3. Metro will take you about 8 to 12 hours the finish depending on your play style. FarCry 3 will take you about 10 to 20 hours to complete, again depending on how you play. The big difference is FarCry 3 gives you the option to continue playing once you've completed it which seems great but I found it boring.