Why would God speak through a sorcerer like Balaam?
God wanted to give a message to the Moabites, and they had already chosen to employ Balaam. So Balaam was available for God to use, much as he used the wicked pharaoh to accomplish his will in Egypt (Exodus 10:1). Balaam entered into his prophetic role seriously, but his heart was mixed. He had some knowledge of God, but not enough to forsake his magic and turn wholeheartedly to God. Although this story leads us to believe he turned completely to God, later passages in the Bible show that Balaam couldnt resist the tempting pull of money and idolatry (Numbers 31:16; 2 Peter 2:15; Jude 1:11).