I'm a grad student and don't have a lot of money for yarn. But I love natural fibers. So I spend a lot of time hunting through the web for good deals.
My favorite so far is Knitpicks which contract manufactures its own lines of yarn. You can get 100% wool yarn, reasonably soft (Wool of the Andes), for as low as two bucks a ball in really intense colors. Or go for a really soft DK weight merino wool (Merino Style) for $2.49. Both are awesome for felting projects. My favorite is Elegance, a soft, sheeny silk/alpaca blend at $4.29 a ball. They have pretty low shipping charges and color cards for almost all their yarns.
I've also ordered discount yarn from Elann. But you really have to know what it is you're ordering. Spend $20 and you'll get color samples of several yarns each month that are going to go on special.
If you want to splurge on sumptuous yarn, I recommend Artifibers. They also manufacture all their own (very original) yarns. I think the prices are reasonable considering the incredible design quality--rich variegated colors, interesting textures and fiber combinations. At their showroom in downtown San Francisco, you can knit or crochet swatches for free and have a nice conversationwith their staff, especially Kira the manager who tries to keep up with crochet trends. In fact, they're having an urban crochet fashion exhibit Sunday October 8 and I am so going.