Probably Unity. Unreal engine may be a second option but Unity takes the cake. You don't have to pay for it unless you want the pro version. You just might want to buy assets for the game your creating though.
Unreal Engine is getting up there at the moment but I would still say that Unity is one of the top ones. Either Unity or Unreal Engine is your best bet.
Personally, I'd say my favorite free game engine would be Unity. It's super versatile and user-friendly, making it great for both beginners and experienced developers. Plus, it has a huge community and tons of resources available online, which really helps when you're trying to learn or troubleshoot something. And the fact that it's free to use (with some limitations) is just the cherry on top! But hey, there are plenty of other great options out there too, depending on your needs and preferences.