Yes, we can't see the equation but we know which equation we are going to solve and what will be the probable outcome. We still need some udf if the problem is not straightforward.
The website contains the explanations about the advantages and disadvantages.
I guess you need to consider all together: What do you intend to simulate? Model complexity, assumptions and simplifications. Then, check in the available software's the possibility to simulate the fluids, turbulence models, etc. Also, don't forget the processors required to execute the calculations.
To answer this question, one needs to consider several factors. I try to summarise some of them and then you can decide based on your needs.
AVAILABILITY & BUDGET
You need to know if you or your institute has any budget for investing on commercial software. If not, you need to confine your options to free and open source packages. (Keep in mind that not all free packages are open source.)
PROBLEM
You should know what type of problem you are targeting to work on. Will you be working on different coupled phenomena, such as fluid-structure interaction, transport of species, fluid flow coupled with electro magnetic forces, etc?
SKILL
This factor is mostly on you! You need to see if you have (or are willing to learn) the prerequisite skill sets to use any of the packages. Some packages like FEniCS needs some Python knowledge, and some like OpenFOAM may need some basic Linux knowledge. (Although nowadays, almost all of them can be used on various OS).
NUMERICAL METHODS
Different software packages use different numerical methods. If you have any preference (regarding the type of the problem that you are working on), you need to target suitable software. For instance, ANSYS FLUENT and OpenFOAM use the finite volume method while COMSOL and FEniCS use the finite element method. I believe understanding the background of the method is necessary for someone who works with a package.
I hope this helps you to choose a suitable software package for yourself.
There are different methods for modeling. First you should be ensured about your case study. For instance, I'm using a mesh free method for modeling my problems.
We use starccm+ from Siemens Corp. which is a dedicated cfd package for marine simulations. If your application is marine based you may go for starccm+ as it has lot of features installed in it.
Pro's : Unlike Ansys fluent, Starccm+ has all the tools under same head or single tree. During simulation you need not run looking into various windows.
Cons': its not user friendly until you master it or get used to it regarding location of various tools and how to apply it for your needs and use.
Starccm+ official forum is strong and really supportive in case you face technical problems.
Not many number of tutorials are there. You have to learn it by self agenda. You should master yourself to become an expert in starccm+.