Welcome to the community!
I’ve used both Godot and Panda3D to produce games. I think both are good engines, but they are also quite different and fit different needs.
Godot uses a heavily editor-based workflow, with excellent out-of-the-box tools, especially for the development of 2D games. I would definitely consider it if you have an undemanding application without too many custom needs and need to quickly churn out content without spending a lot of time building out your engine and pipeline.
Panda3D is a more low level, but more flexible framework, that lets you build out your own “engine” and asset pipeline. It tries to expose the full range of functionality that the graphics card offers. It lets you do more things but you have to do more things yourself. As a result, you can do all sorts of crazy rendering techniques, but you have to do more work to do some seemingly basic things.
There’s another gotcha about Godot: it doesn’t use Python, but its own language that is inspired by Python. This does mean that you’re locked out of the entire Python ecosystem of packages and libraries, and entirely dependent on the Godot-specific ecosystem, which is considerably smaller (albeit growing). If you need to do things that Godot doesn’t provide out of the box, and nobody developed a plug-in for, you have to write a C++ extension. With Panda3D you don’t have this problem, both because you get access to the entire world of Python libraries, but also because Panda3D has sufficient exposure of low-level APIs that you can implement a lot of things yourself.
In the end, the best way to choose an engine is to spend some time with both of them, and then choose which one best fits your desired workflow and gets you closer to your goal.