却说公孙述不断扩充自己的地盘,还打算由江陵这边过来;隗嚣也打算向南发展。汉光武说:“将士们都疲劳了,我真不想再去跟他们两个人多事。我三番五次给他们写信,劝他们归附,还说决不亏负他们,可是他们始终不乐意。怎么办呢?”冯异说:“不去征伐,他们是不会投降的。我愿意听从吩咐。”汉光武说:“关中是通陇、蜀的要道,你在那里镇守不能离开。你先回去,我再调度兵马,想办法去征伐蜀地。”汉光武就叫冯异回到关中去,还吩咐他把家属都带去。
公元32年,刘秀亲率大军来战隗嚣,军队行至漆县时,不少汉将认为地形复杂,前路未卜,不宜深入。刘秀听了后也犹豫不定。正好马援奉命赶到,刘秀忙将军议的事说给他听,并征求他的意见。马援认为隗嚣据险抗命,已然将士离心,只要乘机进攻,必获全胜。当前汉军所虑者,不过是陇右地险难攻,若不熟悉此间地形确实难办,可如今有老马识途,破之易如反掌。说罢马援让人取些米来,当着刘秀的面用米堆出陇右的山谷沟壑,然后指点山川要津,标示出各军进退之路。如此直观详尽的三维地图,让刘秀眼前一亮,大喜道:“敌虏尽在眼中矣!”自带导航的马援凭着一出堆米为山,奠定了平陇大功。
此后刘秀挥军直进,抵达高平第一城。河西军阀窦融率领敦煌、酒泉、张掖、武威、金城五郡太守及羌、小月氏等步骑数万、辎重车五千辆前来与刘秀会合,然后分兵数路攻陇。隗嚣部下十余万人不战而降。隗嚣逃到传说中诸葛亮玩空城计的西城,援陇的蜀军也逃至上邽。刘秀秀完神通后就回洛阳了,临行前他特意写信给岑彭说:“若能攻取西城和上邽两地,便可放心地南击蜀地。人生苦短,既得陇,复望蜀,你要抓紧啊!”成语得陇望蜀就在刘秀的感慨声中油然而生了。
岑彭感受到皇帝早日荡平天下的渴望,也为西城久攻不下而苦恼。于是决定水淹西城,到了十一月份,蜀中的援兵陆续赶到,而汉军的粮食却吃得差不多了,缺吃少穿的汉军受不了西北的苦寒,只得烧毁辎重后相继退兵。隗嚣收拾残部,一时又夺占陇西数郡。
建武九年正月隗嚣死去,王元只身逃奔公孙述,隗嚣的儿子隗纯等投降,陇西平定。
建武十一年春,征南大将军岑彭又发起进攻,蜀将任满大败。王政斩任满首级向岑彭投降。
岑彭亲率主力北上,经过垫江直接进攻平曲。这里是蜀军的一个大粮仓,虽然有军士守护,但根本来不及抵抗,就白白将数十万石粮草拱手相让。
岑彭继续进攻成都,所到之处势如破竹,各城邑都开门向岑彭投降,岑彭就长驱到达武阳,绕出王延岑部的后方,蜀地震惊。公孙述更是大惊失色,以杖顿地道:“是何神也!”
光武帝欲招降公孙述,遣使致书晓示祸福,并举大义相勉,誓不相害。公孙述览书后出示给心腹常少、张隆看,常少与张隆都劝他降汉。公孙述瞿然道:“废兴由命,哪里有投降的天子呢!”。常少与张隆等不敢再言,自思亡在旦夕,相率忧死。
岑彭驻军在彭亡,传说中活了八百岁的彭祖在此羽化登仙,当地人为了纪念他,就将此地称为“彭亡”。当向导告知岑彭此地叫彭亡后,岑彭愣了一下,随后对亲将说:“本将叫岑彭,此地却叫彭亡,怎么听怎么别扭!”岑彭打算移营,可当时天色已晚多有不便,只得命人小心戒备。这时来了一个蜀中逃亡之人,自称是公孙述的亲随被打来奔。岑彭不防有诈立即召见。哪知来人看似猥琐却极有勇力,他一边和岑彭讲成都的事,一边抢过军卒的武器刺向岑彭,岑彭措手不及竟被刺死。帐下士卒一拥而上杀死刺客,也没来得及问他姓名。想不到这个叫彭亡的地名如此灵验,彭祖、岑彭都亡于此地。后人有诗叹曰:
“雨骤风驰善用兵,
公孙击地叹如神。
如何壁垒疏防夜,
已悟彭亡竟殒身。”
岑彭之死是蜀人的不幸——岑彭进入成都平原后,约束军纪,下令军士不得掳掠,很得百姓欢迎。
光武帝听说岑彭被刺当然生悲,遂将任贵所献各物赐给岑彭妻子,且赐谥岑彭为壮侯。