It all depends on what you are looking for.
IMO- sand is really only for looks and you'll have to use root tabs for root feeders since its more compacted it's harder for any type of nutrients to get to the roots. Gravel is good for looks as well, nutrients get to the plants easier, but is kind of a pain to clean. Eco complete is great if you want built in fertilizers, but is a little too costly IMO. Soil with a sand cap is my idea of ideal, the soil provides tons of nutrients and the sand keeps it weighted down, plus keeps it looking pretty and more natural, but requires a decent amount of labor to start up.
There's so many options right now, it really depends on what you're most interested in. All have something good and bad.