自建武元年(25年)至建武六年(30年)初,刘秀经过将近六年的东征西讨,刘秀已经基本上控制了除陇右和巴蜀之外的广大中原之地,基本上统一了中国的东方,与西北陇右的隗嚣、西南巴蜀的公孙述形成了鼎足之势。
建武六年(30年)四月,光武帝至长安,告诉隗嚣他将派谴建威大将军耿弇等七将军从陇西攻蜀。但隗嚣坚绝反对,并派大将王元率兵据守陇坻(今陕西陇县西北),伐市塞道阻止汉军进攻。
四月,汉军沿渭北平原翻陇山仰攻陇坻,但结果大败,兵士死伤众多。王元看后便跟踪追击,幸好有马武率精骑断后,使汉军得以后撤平安归来。刘秀留耿弇驻守漆县(今陕西彬县),冯异驻守栒邑(今陕西旬邑东北),祭遵驻守沂县(今陕西陇县南),又另调吴汉由洛阳西进,在长安集结其所能动用的兵力。
隗嚣乘胜派行巡进攻栒邑,王元攻取肝县,均被耿弇,冯异两人所击败。(从此点来看,他们二人善守而不善攻。)
时割据河西的窦融已经归附刘秀了,进攻金城(今甘肃兰州市西北)时,击破助隗嚣的羌族豪强何封等部,隗嚣腹背受敌。隗嚣大将马援也在隗嚣反汉时便已经归附于汉。光武帝刘秀给他精骑五千,招降隗嚣部属和羌族豪长,从内部开始分化瓦解隗嚣。
隗嚣于是上书刘秀表示亲善,企图以此作为缓兵之计,未遂。即派出使者向公孙述称臣。建武七年(31年)春,公孙述立隗嚣为朔宁王,出兵援陇。
秋,隗嚣亲自率领步骑三万进攻安定郡(郡治高平,今宁夏固原),进至阴架(今甘肃泾川东)。另又派谴部队去进攻肝县,企图夺取关中,冯异、祭遵分别将其击败。
次年春,刘秀派表兄来歙率军二千,秘密从番须、回中,袭占略阳,威胁隗嚣所占据的冀县。
隗嚣集中精锐,反攻略阳数月未克。闰四月,刘秀利用隗嚣顿兵坚城、士卒疲惫之机,进兵高平第一城,窦融也率河西步骑数万前来会师。汉军分路挺进陇山,招降瓦亭守将牛邯等隗嚣大将十三人。属县十六、军队十余万皆降,略阳围解。隗嚣大败只能率残部逃奔西城。
汉军占领天水郡。适值农民军余部复起,京师骚动,刘秀赶回洛阳。同年十一月,岑彭水灌西城时,隗嚣部将王元、行巡、周宗率蜀援军五千人赶到,从高地反击,汉军被打了个措手不及,王元等突入西城,迎隗嚣入冀。
此时汉军补给困难,粮食已尽,各部被迫出陇西。隗嚣收拾残部,一时又夺占陇西数郡。九年正月,隗嚣死。部众拥立其少子隗纯为王。
建武八年(32年)八月,耿弇、寇恂攻破高平第一城。十月,来歙、盖延又攻破落门,王元只身逃奔去公孙述,隗纯等人投降。此战,历时4年,之后陇西始平定,归东汉统治。