Sand is unfortunately being marketed as the "proper" substrate, because bearded dragons come from the desert, and it's easy to market sand as a desert substrate. In reality, their natural substrate would be a mixture of hard packed dirt, clay, and rocks.
Sand is a bad idea because bearded dragons are messy eaters, so if you feed them in their terrarium, they'll inevitably ingest some sand. Since they can't digest sand, it creates the risk of impaction, where it clogs up their digestive system and they will lose the use of their limbs and die.
There's a newer type of sand being pushed that has calcium added to it. A popular brand being vita-sand. The idea is that if bearded dragons are going to eat some of the sand, then it might as well have calcium in it to make it better for them. While it's a finer grain sand, the risk of impaction still exists, because bearded dragons will learn that the sand is a source of calcium, and it will encourage them to eat it.
Reptile carpet is a good alternative. It comes in a roll of felt fabric that you can lay down at the bottom of the terrarium. The positive side of reptile carpet is that it's easy to clean; you can simply take is out and rinse it off. The downside is that bearded dragons' claws have been known to get caught in the fibers.
You can use paper towels, and then you wouldn't have to worry about their claws getting caught, but as soon a paper towel is soiled you're going to have to replace it.
What I think is the best solution, and the one I personally use, is slate tile. It's easy to clean, has no risk of impaction, it holds an even amount of heat, and it even helps keep their claws worn down naturally so you'll never have to worry about clipping them. Simply pick whatever color you want the floor to be (you can even find sand colored tiles if you prefer the look of sand), and have it cut to fit the floor of the terrarium.
Some people go so far as to add grout, but I put a layer of newspaper down to pad the glass and just laid the tile down. That way if I want to clean it, I can take the tiles out. If you grout the tiles, then you reduce the risk of anything getting in between the tiles and needing to clean underneath them, but you lose the ability to take the tiles out to clean them. It's really up to you on which method you prefer.