The Indian subcontinent campaign of Alexander the Great began in 326 BC. After conquering the Achaemenid Empire of Persia, the Macedonian king Alexander, launched a campaign into the Indian subcontinent in present-day Pakistan, part of which formed the easternmost territories of the Achaemenid Empire following the Achaemenid conquest of the Indus Valley (late 6th century BC).
After gaining control of the former Achaemenid satrapy of Gandhara, including the city of Taxila, Alexander advanced into Punjab, where he engaged in battle against the regional king Porus, whom Alexander defeated in the Battle of the Hydaspes in 326 BC, but he was so impressed by the demeanor with which the king carried himself that he allowed Porus to continue governing his own kingdom as a satrap. Although victorious, the Battle of the Hydaspes was possibly also the most costly battle fought by the Macedonians.
Alexander’s march east put him in confrontation with the Nanda Empire of Magadha. According to the Greek sources, the Nanda army was supposedly five times larger than the Macedonian army. His army, exhausted, homesick, and anxious by the prospects of having to further face large Indian armies throughout the Indo-Gangetic Plain, mutinied at the Hyphasis (modern Beas River) and refused to march further east. Alexander, after a meeting with his officer, Coenus, and after hearing about the lament of his soldiers, eventually relented, being convinced that it was better to return. This caused Alexander to turn south, advancing through southern Punjab and Sindh, along the way conquering more tribes along the lower Indus River, before finally turning westward.
Map of Alexander’s Invasion into Punjab: