try and find your fabric/fashion district. there's usually outlet stores and it's great. i guess that only really applies to big cities though. i got some fabric on st-hubert street(montreal/beaubien metro) for 5$ a meter. the walmart in my area also sells knits and they're about the same price, but they're poly-cotton blends. if you live in montreal, it's also worth it to check out darlington which is at rosemont metro. apparently they'll have anything you can imagine.
as for online, i haven't really checked it out but my teacher told me about www.fabric.com and from what i can see they cater to the average person judging by they're imaging.
i've also seen that you can buy off ebay as well.