Without knowing what other fish you have in your tank, I wouldn't like to recommend any particular species of fish, as my recommendation may not be compatible with your current stocking. The Zebra Loach (botia striata) that Bricko recommends, for instance, aren't particularly good with bettas, guppies and other slow-moving, long-finned species. Whilst most botiid loach species like a bit of snail, they aren't exclusively snail-eaters, so they may not do the job you want them to do.
If you're infested with snails, it generally means that you're feeding the fish too much, which is a common issue, and if I'm honest, one that I am guilty of myself. The more left-over food there is, the more there is for the snails, and therefore the more they reproduce. So, part 1 of your solution is to cut down on feeding.
Second thing you can do is to manually pick the snails, crush the shells, and dump the snail bodies back in the water - most fish will enjoy the protein snack. Another trick is to put a lettuce leaf in the tank overnight, and you'll find that the snails enjoy munching on this too, so in the morning, you just pick out the lettuce leaf, and loads of snails too.
The method I used in the past to combat the snail problem is assassin snails. These are molluscivores, so their primary diet is snails. It will take a while but two or three of these will rid you of the pest snails. Whilst they do reproduce, they take a lot longer to do so, and you can at least sell the offspring. I was only able to breed them when I had a gravel substrate, when I switched to sand, they stopped. Now, that might be because it was about that time that I sold the majority of my assassins that I changed from gravel to sand, and I may have left myself with all one gender (I kept 3 or 4 mature snails).