What are the stains from? Food, grease, iron, mud, grass? If it's a protein stain, cold water and liquid laundry detergent can often remove it. For non-protein food stains and others (excluding iron mineral stains), other products to try would be washing soda (marketed under Oxyclean and other similar, I believe).
Oxyclean can be applied straight onto the stain, using as hot of water as you can stand to wet the cloth and then to make a paste with the Oxyclean. Let it sit for an hour, then rinse with hot water, check to see if the stain is still there, and repeat. You can also scrub the Oxyclean into the stain with a soft old toothbrush and let it sit. Once the powder is totally dissolved and there is no fixxing at all, it's time to repeat.
Rust stains are in a special class - you need a product specifically for removing rust stains from fabrics. Wal-Mart used to sell a couple products, but I went looking a few days ago and couldn't find them. DO NOT USE CHLORINE BLEACH ON IRON STAINS! It sets the stains.
Vinegar is supposed to be good for sweat stains - helps get out the stain and helps neutralize that odor that can come back the next time the fabric gets warm (like when you wear it the next time).
For everything else, if the peroxide and oxyclean type products don't work, you can soak them in hot water with chlorine bleach added and well mixed in before adding the clothes, and then agitated well to get the mixture evenly distributed throughout. Let it soak a while and then wash it well in the machine. You may need to rinse it with vinegar to neutralize the bleach, and rinse it again to get all the bleach smell out.
Even more drastic is to get the fabric totally drenched in hot, hot water, lay the shirt out in the sink, and dab a bleach-dipped Q-tip directly on the stain, watch it carefully and in 5 minutes or as soon as the stain fades, whichever comes first, dunk it in hot water and rinse it well to dilute the bleach before it does too much harm to the fibers.
Not every stain will come out. I've saved a lot of clothing with the methods above, but some stains are simply set for life. I buy our clothes at second hand shops or garage sales, so I spend very little on clothing. If the cost of stain removal is more than what I would spend to replace the item, I just let it go.