庾翼生前就曾向成帝推荐道:&ldo;桓温是当世英雄,皇上当委以重任。此人必能立匡世之勋。&rdo;桓温在庾翼的赏识和提拔下先升为琅琊内史,后升为都督青、徐、兖三州诸军事,徐州刺史,可谓青云直上,到褚太后任命他为安西将军都六州军事时,桓温也不过三十三岁。
桓温素有大志,他与前几任安西将军不同,一上任就打算建功立业,统一国家。他把自己的想法告诉江夏相袁乔,袁乔道:&ldo;如今天下三分,北有胡赵,西有蜀汉。蜀国虽然地形险要,但无论军事实力还是经济实力都比胡赵要弱很多。将军要一统四海,不如先攻蜀汉。&rdo;
桓温点头称是,遂先派大量的间谍人员进入蜀汉,搜集情报。
汉国的李寿公元343年病逝,比晋成帝晚死一年,比晋康帝早死一年,太子李势登基。按规矩李势当皇帝后,应当先立太子。可是李势没有儿子,于是他的弟弟将军李广,就请求立其为皇太弟。李势不但不答应,而且很生气,要废黜李广。大臣解思明替李广求情,李势遂连李广带解思明一块儿杀了,而且灭了解思明的三族。
李势继位后骄奢淫逸,不理政事,刑法苛滥,并广派徭役,增加赋税,大兴土木工程,人民苦不堪言。不久后又发生自然灾害,人们实在活不下去了,晋永和元年(345),太保李弈在晋寿(在今汉中地区)举兵反叛,老百姓纷纷响应参加,很快达到数万人,一直攻到成都,将成都包围。李势亲自带兵与李弈登城拒战。李弈战死,手下数万人溃逃。虽然李弈战死,巴蜀的饥民问题仍然没有解决,共有十余万人外出流浪,成为蜀国大患。
桓温了解到这个情形,便打算进攻蜀汉。正巧凉州牧张骏病死,世子张重华嗣位。赵国的石虎攻蜀国畏惧这个地方险峻,攻晋又没有实力,攻燕连吃败仗,只好欺负前凉。见十九岁的张重华当了凉州牧,便起兵去攻。
桓温听说后喜道:&ldo;石虎去打凉州,我没有后顾之忧了。此时若不灭蜀,以后怕再没有这么好的机会了。&rdo;遂把指挥中心向西迁到江陵(今湖北荆州)。东晋永和二年(346)十一月辛未,桓温征得朝廷的同意后,派长史范汪留守江陵,以袁乔为前锋,率五千水军先行。自己带着大将周抚、司马无忌等人,率步骑一万,从三峡故道西进。
一路上桓温只见三峡地势险峻,道路难行,每日行军只能走二十多里路。许多地方都是一夫当关,万夫莫开,林密山深,但有埋伏,必全军覆没。桓温走得十分小心,每每先派大量哨探仔细探过路,没有埋伏才敢前进。哪知道直走到夔门也没有见到蜀兵的影子,桓温叹道:&ldo;李势随便在哪个地方埋伏下一支军队,我便无法入蜀。当年曹魏灭蜀,就是因为蜀关皆废。没想到历史又要重演啊。&rdo;刚刚说完这句话,忽见前面一股杀气冲天而起,隐约有鼓角之声,似有伏兵埋伏。
桓温急忙把大军后退三里多地,一直撤到地势开阔处才排兵列阵,准备交战。并责问前方探哨,为何没有查出伏兵。侦察兵很委屈,我们查得很仔细,并没有人啊。不过,江边有乱石六十四堆,倒是充满杀气。
桓温还是不太相信,急派人寻来几个当地人问,当地人说这是当年诸葛亮摆下来的&ldo;八阵图&rdo;,桓温这才恍然大悟。遂亲自去观摩学习,并画成图形,以作日后研习之用。这段故事正史没有,明朝杨尔增《两晋秘史》中有这么一段,因为有意思,拿来一叙。
桓温的部队到了青衣江,李势才知道,急忙派大将李福、李权分两路去彭模防守;大将昝坚率水军自江北鸳鸯碕(今彭山东)渡江到犍为(今彭山东)防守。
桓温这时已经到了彭模(今彭山东南、岷江东岸),他的部下都建议兵分两路进攻。唯有谋士袁乔认为,兵分两路,不好配合,如果有一路败了,剩下一路孤军深入,也不会有结果。不如全军携三日粮,轻装齐进,以示必胜之心。将士必一鼓作气,拿下成都。桓温用了袁乔的意见,逃选精兵一万三千名去攻成都,留下参军孙盛和日楚带两千士兵在彭模守卫辎重。
桓温走后,蜀军李福带兵来攻彭模,孙盛坚守不出,李福不能攻克。桓温则与李权的军队相遇,李权接连吃了几个败仗,逃回成都。成都的镇东将军李位都觉得大势已去,偷偷跑出来降了桓温。桓温在李位都的带领下行军速度更快。而昝坚来到犍为后才知道人家桓温根本就没有走这条路,于是立刻带军回撤去救成都。这时东晋军已经快速来到成都附近的十里陌,在这个地方与昝坚打了一仗,昝坚被击败。
这时李福因攻不下彭模也已经退回成都,李势城中尚有三万兵马,军事力量也不弱。于是下令所有军队出击,与晋军在成都西南的笮桥大战,竟然打败了桓温的突击部队,参军龚护战死,一直跑在前面的桓温也被流箭射中跨下所骑的马。
晋军恐慌,便想退后,这时袁乔命鼓手猛击战鼓,并力催后边的士卒奋力向前,晋军遂拼了命地向前冲,又把蜀军击败,一直攻入城中。李势带着残兵逃出成都,逃出不久后,又回到成都。这回不是反攻成都,而向桓温投降。
东晋永和三年(347)三月,占据蜀地四十六年的成汉国,到此灭亡。
桓温在成都待了一个多月,留周抚镇守成都,自己带兵回到江陵,李势等成汉的宗族都被送到建康。