If, as some commentaries explain (Refer to 4:20:3:2), Moshe did not take Tziporah and his sons with him to Egypt, what is this Pasuk referring to?
Seforno: The Pasuk is reverting to the journey from the desert to Midyan, only the Torah wanted to first conclude Hashem's list of instructions concerning his Sh'lichus.
Why did the angel want to kill Moshe? What had he done wrong?
Rashi (citing Nedarim, 31b): Either because he was lax in circumcising Eliezer or (not because he was lax in not performing it 1 but) because he settled down in the inn first.
Rashbam #1: Refer to 4:14:1:3.
Rashbam #2: Because he should not have taken his wife and children with him, but should have gone swiftly on his Sh'lichus. 2
Seforno: Because on the eighth day, when Hashem came down to enter into a B'ris with the baby, 3 he was lax in performing the Mitzvah.
Targum Yonasan: He failed to circumcise Gershom, due to a condition Yisro made with him when he gave him Tziporah in marriage. 4 Yalkut Shimon (268) - they stipulated that his first son will be for Avodah Zarah 5 . Moshav Zekenim - just like Milah after eight days does not override Shabbos, it does not override Hashem's command to go to Egypt. 6 Hashem did not want to kill Moshe, rather, the baby.
In fact, he reckoned that, on the one hand, to circumcise before leaving (with his wife and children) would endanger the baby; whilst on the other, it would not be correct to postpone fulfilling the command of Hashem by three days until the baby recovered (Rashi).
And it was the Mitzvah of Milah that acted like a Korban - like we find by Gid'on and Mano'ach, who brought a Korban upon seeing an angel - that atoned for his sin and saved his life (Rashbam).
This is apparently the source of the custom to prepare a special chair for the B'ris Milah in honor of the Shechinah (Seforno).
Eliezer (who may well have already been born) was circumcised, because the condition was confined to their first son, to leave him uncircumcised in honor of his god (Targum Yonasan).
Ba'al ha'Turim (2:16): Moshe was sure that he would persuade Yisro to reject idolatry [and pardon the Tenai]. Tosfos ha'Shalem (2:16:2, citing R. Efrayim Gad) - the Tenai was that he learn Midyanite culture, i.e. a foreign Avodah. Tosfos ha'Shalem (2:16:3) - Moshe intended to convince his son to repent, and he did. Even so, Moshe was punished, and his grandson became a priest of Pesel Michah.
Moshav Zekenim: Even though Bnei Yisrael did not circumcise in the Midbar due to danger, and Hashem was not angry, here Moshe erred to bring his wife and sons with him
Rashi writes that the angel wanted to kill Moshe for settling the lodging before circumcising. It would endanger the baby to circumcise him, for Moshe must go to Egypt tomorrow!
Hadar Zekenim (1): This was after Moshe had returned to Egypt, so there was no danger.
Da'as Zekenim, Hadar Zekenim (2), Moshav Zekenim (1): This was after Aharon convinced him not to bring his wife and children to Egypt. 1 Tziporah could stay with the baby until he is healed 2 and able to return to Midyan.
Riva (1), Moshav Zekenim (citing Mizrachi): The Malon was close to Egypt, so there was no danger to circumcise and go to Egypt.
Riva (2): Hashem did not command him to take his wife and children. Moshe should have circumcised him in Midyan and left him with Tziporah.
Moshav Zekenim: Milah on day eight overrides Shabbos. All the more so it overrides Hashem's command to go to Egypt! Moshe would not have erred about this. Rather, he neglected circumcising Gershom.
Da'as Zekenim, Hadar Zekenim: Even though Shevet Levi was not enslaved, he did not want his wife and children to see Yisrael in distress.
Moshav Zekenim: Moshe intended that Tziporah stay there until he takes Yisrael from Egypt, but she did not want to wait, and returned to Midyan. Alternatively, initially he left her there, and after he came to Egypt, he made a Shali'ach to tell her to return to Midyan, for he saw that it will be a long time, i.e. a month between Makos.