紀元前333年の終わり、 アギス3世はエーゲ海にてペルシャの将軍ファルナバゾスとアウトプラダテスと会談し、 彼らにギリシャでの彼の対アレクサンドロス戦争の計画を示した。 当時アレクサンドロス3世と戦っていたペルシャ側は、 共通の敵打倒のためにアギスに対し30タラントンの資金と10隻の艦船を援助することを約束した。 アギスはその金でイッソスの戦いでペルシャ方として戦い、 それから生還したギリシャ人傭兵8000人を雇い、 対マケドニア戦の準備を始めた。 というのも、ガウガメラの戦いでのマケドニア軍の勝利の報を受けたギリシャ人はマケドニアの強大化に警戒心を募らせていたからである。 アギスは同盟国、傭兵を含め歩兵20000、騎兵2000を下らない兵力を集めた。
紀元前331年の夏に戦いの火蓋は切られた。 トラキア総督メムノンの反乱に乗じて挙兵したアギスはマケドニアの将軍コラゴスを破り、 味方に付かなかったメガロポリスを包囲した。
一方、アレクサンドロス3世よりマケドニアとギリシャを任されていたアンティパトロスはトラキアとペロポネソスの二正面作戦を避けるためメムノンを許し、 40000以上の兵力を召集してアギスの許へ進撃した。
戦いはメガロポリス近郊で行われた。 緒戦はスパルタ軍優位に運び、マケドニア軍を後退させた。 アギスが投槍で腿を負傷して戦闘不能になったものの依然スパルタ軍は奮戦し、 数で勝るマケドニア軍と渡り合った。 しかし、やがて数で劣るスパルタ軍はマケドニア軍に押され始め、敗走した。 アギスは部下たちに生きながらえるよう命じた上で自らは最後まで戦い、 戦死した。
この戦いでディオドロスによればスパルタ側は5300人、 マケドニア側は3500人の戦死者を出した。 クルティウスの記録ではマケドニア軍の戦死者は1000人だったが生存者のほとんどが負傷したという。 この戦いでの敗北が決定的敗北となり、 スパルタのマケドニアへの反乱は失敗に終わった。