Some of this depends on experience as well as what you are wanting to achieve in the way of planting. If you are somewhat new, I do not recommend going with a true soil as it does have some things to make it more difficult than others. So as a reasonably easy, reasonably cheap and controllable item, many like pool filter sand as it will grow lots of different plants and not have some of the "fussy" things like being stirred into a dust cloud if we move things too much or fish dig. We may sometimes feel we need soil to grow as that is the way the do in a garden but aquatic plants get much of the food from their leaves and that makes it okay to feed the water, and it gets to the roots. Some plants do feed heavy from the roots and those we can do things like root tabs to add what they might need extra.
Some also like items like Flourite, which is a baked clay which takes years to gradually degrade as it is somewhat between soil and chips of brick! I started with Flourite and gradually moved into other items which got mixed together, so that all my tanks are a mix of plain gravel, Flourite and sand as well as some plain garden soil which got spilled/mixed in.
My personal thoughts in a nutshell?
Pool filter sand is cheap and easy to work with, holds plants and grows most anything I've tried.
Flourite- somewhat more expensive, seems to do much the same as sand but does have a different "look due to color.
Soil-A natural if we can get it without lots of debris decaying like leaf ibts, stems, etc and free of pesticides but it tends to be a bit of nuisance to move and change or if fish dig. Not one I recommend to get the first start.
Tons of other options but not what I feel is needed and I go simple when possible.