Обе формы имеют право на жизнь. Это так называемый партитив или частичный падеж купить молоко - говорится о молоке в целом, а купить молока - некую часть молока выпить чай или выпить чаю У многих слов партитивные формы сейчас считаются устаревшими.
В любом случае ключ к этому вопросу в изучении явления партитива в русском языке. Вот здесь ещё есть некоторая информация Удачи! :)
<em>не могу вставить ссылки, ругается. попробую в комментариях</em>