In the beginning of the Parsha we find Balak trying to convince Bilaam to come assist him with his battle against Am Yisrael.

Even though Balak sends over important people and offers Bilaam a lot of money & honor, Bilaam says that he will not go, with out Hashem's permission.

After sending for Bilaam a second time, and Bilaam saying again that he depends on Hashem's will, Hashem tells Bilaam in a dream - that if they came to call him, he should go.

Yet, with all this, Hashem is upset with Bilaam for going to Balak - and we refer to Bilaam as a Rasha - a very wicked person...

What's going on?

Didn't Hashem tell him to go to Balak?!

Bilaam sounds like a real Tzadik - that only cares about Hashem's will - so why is Hashem so angry at him?