알렉산드로스는 군대를 이끌고 왼쪽을 공격하며 코끼리 군단을 피했고 마케도니아 원정군은 포로스 대군을 궤멸시키는 데 성공해 포로스왕은 알렉산드로스 앞에 무릎을 꿇었다.
 마케도니아 원정군이 인더스강을 건넌 것은 기원전 326년 봄이었다. 알렉산드로스는 원정군을 이끌고 탁실라 왕국을 향해 진군했다. 탁실라 왕국을 지배하고 있던 암비 왕은 원정군이 들이닥치자 잔뜩 겁을 집어먹고 황소 3000두와 1만 마리의 양, 30마리의 코끼리를 알렉산드로스에게 바치며 항복했다.
 원정군은 암비 왕이 이끄는 5000명의 군사의 안내를 받아 마침내 히다스페스강에 이르렀다. 강폭이 800m나 되는 큰 강이 가로막고 있어 대군이 건너기 쉽지 않았다. 고심 끝에 정찰대를 보내 상류의 강심이 낮은 지역으로 도강을 한 알렉산드로스는, 마침내 히다스페스강 동쪽 벌판에서 인도의 포로스 군대와 만났다. 포로스 군대는 보병 3만명에 기병 4000명, 전차 300대, 코끼리 200두의 군세로 마케도니아 원정군과 맞섰다.
 포로스 군대의 전면에는 전투용 코끼리 200두가 배치되어 있었는데, 그 군세가 자못 위협적이었다. 알렉산드로스는 코끼리 군단을 만나 전투를 벌이는 것은 처음이었기 때문에 일순간 당황했다. 전투 경험이 많은 원정군 기병대 장군들도 육중한 몸의 코끼리 군단을 보고 겁에 질렸다.
 그러나 알렉산드로스는 중기병 대장 코에누스에게 포로스 군대의 오른쪽을 공격하라 명하고, 자신은 군대를 이끌고 왼쪽을 공격하여 정면으로 질주해오는 코끼리 군단을 피했다. 앞으로 진격해오던 200여 마리의 코끼리 부대가 적들을 향해 방향 전환을 하기에는 시간이 좀 걸릴 수밖에 없었다. 그 사이 속전속결의 전투에 익숙한 마케도니아 기병대는 코끼리 군단을 양 측면에서 공격해 많은 상해를 입혔다. 그러자 주춤거리던 코끼리 군단이 뒤로 후퇴하면서 오히려 포로스 보병들을 짓밟아 죽는 자가 부지기수로 늘어났다. 전투는 장장 일곱 시간 동안 계속되었으며, 마케도니아 원정군은 마침내 포로스 대군을 궤멸시키는 데 성공했다. 이때 포로스 왕은 포로가 되어 알렉산드로스 앞에 무릎을 꿇었다.
