The answer is not simple, and may vary from religion to religion. But in general:
Let's start with a preacher, a person who preaches. "to preach" means to proclaim the teachings of a religion, through discourse such as sermons (talks which instruct people on religious teachings, often based on passages from a holy book, such as the Bible).
A priest can also preach a religion. However, a priest usually has a rank in the religious hierarchy of his church. He also performs certain functions that a preacher doesn't perform, such as performing religious rites and sacraments, and in some religions can forgive sins, while acting as an intermediary between man and God.