Well, don't throw them away and buy new ones, here's what you need to do. If they are white, then wash them in hot water with bleach and that should do the trick. If they are colored then wash them in warm water and add 1/2 a cup of vinegar to the wash along with the detergent. The vinegar will kill the enzymes that are making the towels smell bad. You may need to do this more than once, but I found that it worked after one load.
Try it. It really works.