There are many options. It depends on how big your tank is and how much money you want to spend. Pool filter sand and baked clay such as Turface are very cheap options ($5-$15 per 50lbs) not marketed for this use, but are widely used. Eco Complete or Flourite are marketed for us, and have no included nutrients, but will readily absorb nutrients from the water column and mulm that settles on them (Turface is basically the same thing as Flourite). And most expensive are things like ADA Aquasoil which are widely regarded as the "best" (arguable), and have nutrients already included.
You can do searches here and find plenty of info on all kinds. You should be able to find Flourite at PetSmart and EcoComplete at PetCo if you want to save on shipping.
You also have options like mineralized topsoil or dirt or organic potting mix, capped by just about anything.
As for depth, go for about 3", and use a substrate calculator to figure out how much you need.
http://mizuworld.com/index.php/pages/calculator
http://www.plantedtank.net/substratecalculator.html