Why was Hashem angry with Bil'am?
Rashi and Rashbam: Because he wanted to go, in spite of the fact that it was evil in the Eyes of Hashem.
Ramban: Refer to 22:20:1:3. And Hashem was angry with him for not telling the emissaries what Hashem had said. By wordlessly saddling his donkey sand accompanying them, 1 he created a Chilul Hashem conveying the impression that Hashem had changed His mind and now agreed to curse Yisrael. Moreover, when later, they would see that he would not curse Yisrael, they would accuse Hashem of poking fun at them.
Targum Yonasan: Because he went with the intention of cursing Yisrael
Ramban: A sign that he was keen to go and curse Yisrael in keeping with Balak's request.
As indicated by the word "Hu".
What are the implications of the term "Mal'ach Hashem"?
What is the significance of "the two servants" (Yeinis and Yemris
Rashi: An important person does not travel without two servants to serve him, to ensure that there is always one servant in attendance.
Seforno: Based on the Gemara in B'rachos, 43b 'Three people cannot see the demons but are not harmed by them', it explains why Bil'am did not see the destructive angel (and why he was not harmed by it). 1
See also Or ha'Chayim.