I also recommend Unity. It's free and relatively easy to use, and it has support for lots of 2D and 3D formats. Because it's quite easy to use, it will allow us to focus more on the storyline or artistic aspects of the game, which are crucial if we want to make this game as "definitive" as possible.
Another option aside Unity is Microsoft XNA. It's also free (we can use Microsoft C# Express), and has access to DirectX resource and library, which is great.
Another option aside Unity is Microsoft XNA. It's also free (we can use Microsoft C# Express), and has access to DirectX resource and library, which is great.