Recs.
Updated
Godot is a free, open-source, and MIT licensed game development environment for 2D and 3D games. The object oriented API can be used with C#, C++ and GDScript.
SpecsUpdate
Pros
Pro Free and open source
Godot is licensed under MIT license. Anyone can grab the source from https://github.com/godotengine/godot, and compile the engine themselves.
Pro Under constant development
This engine barely released one year ago has more than 1000 forks on github and about 100 developers. Not only that just a bit of browsing trough issues you will quickly find out the dev community loves new esp free technology and does not shy away from completely rewriting parts of the engine. The audio engine is being completely rewritten to use threads and so forth.
Pro Friendly towards Version Control Systems
The engine is build not only to support version control but to really use it. Scene files for example which usually get compiled into some sort of unreadable data stay in a text format - that way you can actually see your changes in a version control system like Git.
Pro Simple and readable codebase
The engine's source code is easy to read and understand with a self-documenting approach to code design. You don't have to wait months or years for other people to fix an engine bug that is important to your game. Often times, you can spend an hour or two of your own time to fix whatever problems you encounter yourself.
Pro Built-in documentation linked to the internal ScriptEditor
The editor has a fully searchable index of class API documentation for everything the engine offers (NOT just a web interface). You can easily open the documentation for any class by Ctrl-clicking the class's name in the in-engine text editor for scripts.
Pro Easy to learn scripting language
Godot has their own scripting language called GDscript. The scripting language is easy to learn with python-like format, but it is not python. More like a mix of Javascript, PHP, C++. It's very powerful, easy to learn, and it's free of unnecessary things because it's designed for this purpose.
It can be used to add custom behaviors to any object by extending it with scripting, using the built-in editor with syntax highlighting and code completion.
A built-in debugger with breakpoints and stepping can be used and graphs for possible bottlenecks can be checked.
Pro Internationalization of the editor
You can change the language shown in menus. Godot translations: https://hosted.weblate.org/projects/godot-engine/godot/
Cons
Con Lack of tutorials
The 3.0 version is difficult to get into without a proper tutorial for the advanced stuff (be it video, article, etc.) and because the 3.0 v is very new - it doesn't have too much video tutorials.
Con Difficult to optimize
Godot has an OOP architecture. Everything is an object internally and data is spread among many classes, thus it's difficult to optimize (i.e. not cache friendly, difficuly to vectorize or paralellize, etc).
Read about "Data Oriented Design" for more info about the problems and solutions.
Con If it's not 3.0 - don't count me in
The GDScript Language that Godot comes with is pretty simple (It shares a lot of similarities with Python) and that's an issue if you don't like Python.