If you just want a phone that has the best official selection of modern apps* and works fine and don't care about how closed the platform is, I'd get an iPhone. The 5C (what I currently have) is probably the best option right now, or a 5 if you can get one.
If you want a phone that has a much more open platform that has fewer official apps*, but many more third-party ones, and you like lots of customization, go with Android. The Nexus 5 seems pretty good, and a couple of my friends have S5s and love them. It seems like the S5 might not be the best option looking at this thread, so also consider the new HTC One.
* I'm just making an assumption here, this may or may not be true. If it's not true, please correct me.
Edit: When my contract expires, I think I'm going to switch to Android. My 5C should last a while, even when they stop making updates for it, so I should be good for any games I want that are only on the App Store.