נְקֹ֗ם נִקְמַת֙ בְּנֵ֣י יִשְׂרָאֵ֔ל מֵאֵ֖ת הַמִּדְיָנִ֑ים אַחַ֖ר תֵּאָסֵ֥ף אֶל־עַמֶּֽיךָ׃
וישלח אותם משה (במדבר לא ו). הקב"ה אמר למשה נקום בעצמך, והוא שלח לאחרים, אלא על ידי שנתגדל במדין, אמר אינו כדין שאני מיצר למי שעשו לי טובה, המשל אומר באר ששתת ממנו מים אל תזרוק בו אבן. ולמה שלח לפניהם פינחס, אמר מי שהתחיל במצוה הוא גומרה, הוא השיב את חמתי, הוא יגמור את מצותי.
(Numb. 31:6:) THEN MOSES SENT THEM, <A THOUSAND PER TRIBE ANONG WITH PHINEHAS BEN ELEAZAR THE PRIEST FOR THE TROOPS>. The Holy One said to Moses (in vs. 2): Take vengeance by yourself, but he sent others. It was simply because he had been raised in Midian. He said: It is not right for me to oppress those who have done well by me. The proverb says: Do not cast a stone into a cistern from which you have drunk water. But why did he send Phinehas before them (instead having someone else in command)? He said: Whoever has begun a religious act should finish it. <Phinehas> has (according to Numb. 25:11) TURNED AROUND MY WRATH (by executing an Israelite man copulating with the Midianite woman). Let him finish the act.
Moshe sent troops instead of going to war personally, he had gratitude towards Midyon who hosted him for many years...
Who gave Moshe permission to disobey a direct order from Hashem? In the Gemora, we see that excuses don't help...
אֲמַר לֵיהּ: מַאי כּוּלֵּי הַאי? אֲמַר לֵיהּ: מִשּׁוּם דְּלָא עֲסַקְתְּ בִּפְרִיָּה וּרְבִיָּה. אֲמַר לֵיהּ: מִשּׁוּם דַּחֲזַאי לִי בְּרוּחַ הַקֹּדֶשׁ דְּנָפְקִי מִינַּאי בְּנִין דְּלָא מְעַלּוּ.
Hezekiah said to him: What is all of this? For what transgression am I being punished?
Isaiah said to him: Because you did not marry and engage in procreation.
Hezekiah apologized and said: I had no children because I envisaged through divine inspiration that the children that emerge from me will not be virtuous. Hezekiah meant that he had seen that his children were destined to be evil. In fact, his son Menashe sinned extensively, and he thought it preferable to have no children at all.
Why did Moshe disobey?