At the risk of sounding insolent, I'll have to disagree with mklfarha. Although it's just my own opinion, the I am much more partial to the Blender game engine. When you reach a certain level of proficiency at programming and modelling, the Blender game engine allows much more freedom of choice for game types and in-game mechanics. It's also open-source, meaning you'll never have to worry about copyright.
Having said this, Unity is much better for beginners, as many functions for the game are already built in, such as movement for characters and pathfinding. Also, for extreme hardcore programmers needing to squeeze every last drop of power from the computer, Unity would be better, as it is much better optimised graphically and in all other aspects, although if you're encompassed by my last statement, you'd already know all I've said here and more.