Unity: Unity is an excellent choice if I am targeting 2D games, mobile game development, or plan a then cross-platform quality. Unity is very flexible and has enormous asset stores. It's way easier for beginners to learn. This is great for small to mid-level games, think indie projects.
Unreal Engine: I choose Unreal Engine if I develop a high-end 3D game, incredible graphics come with rich details in environments or lighting. Open the gate for a AAA-quality game that needs to look beautiful and would benefit from full-physical simulation, or is just too big. The built-in visual scripting (Blueprint) with UE4.