I actually have to switch sides on this rivalry. I loved Metal Gear but am addicted to Uncharted 2; both the campaign and online mutliplayer portions of the game are amazing.
I've played both games all the way through, and I enjoyed both. I can easily recommend both. But I would have to give MGS4 the edge here, it is that good of a game.
I'm not what I would call a gamer but have been playing when I have time. That way I don't hear it from the wife for not using a $300 machine. Metal Gear was awesome though.
My opinion could easily change as I haven't played Uncharted Among Thieves but I have played and beat Metal Gear 4 and it was by far the best game I've ever played. The cinematic sequences were lengthy at times but the story line and game play were simply amazing. If you're on the fence with MG4, jump the hell over.