为了有力地打击南中地区以雍闿为首的叛乱分子,诸葛亮确定了东、西、中三路进军的战术:东路由马忠率领一支军队,进攻益州东面的牂牁郡;中路由李恢率领一支军队,牵制叛乱分子老巢益州郡,使其不能北上支援越巂郡叛乱分子;诸葛亮亲自率领大军,攻打力量较大的越巂郡。马忠一路,并没有费多大气力,就攻下了牂牁;李恢一路,虽然进展不大,却断绝了益州郡与越巂郡的联系,使叛乱分子陷于孤立。诸葛亮亲自率领的西路军,同早就在旄牛、定窄和卑水等地构筑了许多堡垒、要塞的夷王高定,展开了激战,并消灭了高定的主力,杀死了雍闿及高定本人,很快平定了越巂郡。
牂牁、越巂相继平定之后,西南地区的少数民族,由于雍闿等人的蛊惑、影响未曾肃清,隔阂尚未清除,于是夷人孟获,收罗高定与雍闿的余部,继续在益州郡扰乱,参加的人大都是受骗的少数民族人民。为了安定益州郡,建兴三年五月,诸葛亮率领大军渡过了泸水(今金沙江),与李恢、马忠两路军会合,共集益州郡,同孟获展开了斗智斗勇的战斗。
孟获这个人,生得熊腰虎背,性格倔强,而且勇敢善战。他本来不是夷族的贵族,只是听信了雍闿等人的挑拨、煽动,才参加了骚乱。雍闿、高定死后,他被夷人推为领袖,深受夷人的爱戴,他的部将,大都是能骑善射、能泅善攀的高手。他们世世代代聚居在南中四郡的山区里,这里峰峦跌宕,奇石嶙峋,绵亘的大森林里,虎豹成群,蛇蝎毒草,到处都是。穿山过峡而来的泸水,犹如脱缰的野马,呼啸奔腾,惊险异常,需要选择渡口,靠皮筏竹簰才能强渡。一到夏天,炎日当空,瘴气袭人,暑毒难当。即使是长期定居在这里的人,也难免遭到毒蛇、猛兽的袭击和疾病的折磨。诸葛亮率军南征就是在这样一个特定的环境里进行的;加上语言不通,地理不熟,这需要多么大的毅力才能克服!
一天,孟获率领由夷人组成的军队同诸葛亮大战。诸葛亮命令自己的军队,不许杀死孟获,只许活捉他。果然一场战斗结束,孟获被擒。这时,蜀国的将领和兵士欢呼雀跃,拍手称快,希望早日处决孟获,以儆戒夷人的反叛者。不料诸葛亮不仅不杀孟获,还亲自替他解了捆绑的绳索,带领他参观自己的军营,并且亲切地问孟获:“你觉得蜀国的军队训练得怎么样?战斗力好不好?”当了俘虏的孟获,很不服气,怒气冲冲地对诸葛亮说:“这样的军队算不了什么,我是因为不知道你们军队的真实情况才打了败仗的,如果有机会再打一仗,我一定会胜利!”听了孟获这些傲慢无礼的话,诸葛亮却不生气,笑着对孟获说:“那很好,现在就放你回去,好好准备,再打一仗,要是再次被擒又将怎样呢?”狡黠的孟获连声说:“要是真这样,你再次俘虏了我,我就心甘情愿地投降你!”
诸葛亮真的把孟获放了回去,孟获着实准备了一番,同诸葛亮再战。不料第二次战斗结束,孟获又被擒了。诸葛亮还像第一次那么对待他,一不杀,二不骂,只是问他为什么又打败了。孟获扪心自问,感到再没有理由可说,但内心总还是不服气。因此他低头不语。诸葛亮见他不说话,知道他还是不服气。于是又像第—次那样把他放回去,约他再来战斗。这样一连七次捉住孟获,又七次放他回去。到了最后一次,诸葛亮连问也不问,立即放孟获回去,要他再来战斗。
经过七战七败和七次被擒的孟获,尽管这个人性子很倔强,还是深深受到了感动,他倾心吐胆地回答说:“不!不!我不回去了,蜀国的军队是不可战胜的。诸葛丞相,您不仅智慧过人,还如此诚实守信,实在叫我佩服得很,从今以后,我们这些南方人再也不造反了!”诸葛亮见孟获再也不肯回去了,而且态度也比以前恭敬、顺从多了,知道他已经心服了,于是就正式委派他做南中地区少数民族的首领,其他大小头目也都起用少数民族。然后,诸葛亮便率领军队向北撤退。孟获和南中地区的少数民族首领看到诸葛亮这么对待他们,十分高兴,立即把这一带的金、银、丹、漆、耕牛、战马等物资收集起来,主动交给了诸葛亮的军队。蜀国的疆域,从此扩大到了滇池(今云南宜良)一带,南中四郡以后虽有几起小规模的叛乱,但总的说来还是比较安定的。
对诸葛亮“七擒孟获”的做法,不仅当时各族少数民族人民感到满意,就连后世的统治者也称赞不已。唐朝人胡曾便写过一首《泸水》诗,称颂诸葛亮南征以诚信服孟获。他写道:“五月驱兵入不毛,月明泸水瘴烟高。誓将雄略酬三顾,岂惮征蛮七纵劳。”