The starting point of such invasion was the city and port of Veracruz, on the Gulf of Mexico.
Maximilian I, and the invaders were the French.
Spain invaded Mexico.
He was installed as part of a puppet regime led by the French Empire (Napoleon III), when French forces invaded Mexico. See related questions.
In order to expand french territory.
The American Civil War (1861-1865) prevented the U.S. from challenging France when it invaded Mexico.
Confederate Brigadier General Henry Hopkins Sibley invaded the New Mexico Territory.
Mexico IS the homeland. If you mean which country invaded and colonized Mexico, it was Spain.
The French and the Japanese
The American Civil War (1861-1865) qualifies as the main reason preventing the United States from challenging the French control of Mexico.
If you mean when Mexico was being invaded by French forces, it was because the United States was in the middle of its own American Civil War.
The so-called "Aztlan War" is a racist myth. As for the rest of your question, Mexico has never invaded Texas. Texas was part of Mexico, and Mexico tried to prevent Texas from declaring independence. The effort failed, but it is false to say that Mexico ever invaded Texas.
Originally, Mexico was a colony of Spain, but fought and won its independence in 1821. Between 1864 and 1867, Mexico was invaded by French forces, who at the time installed "Emperor Maximilian I", making of Mexico a French protectorate. Later, liberal forces led by Benito Juarez overthrew Maximilian and Mexico became independent once more. Since then, Mexico hasn't been "colonized" by another country.