当初,曹操打败马超后,追赶马超到安定,听到田银、苏伯起兵的消息,率军返回。参凉州军事杨阜对曹操说:“马超有韩信、英布那样勇猛,很得羌人和胡人的信服,如果大军撤回,又不加以防备,陇山以西的各郡恐怕就不能再属于朝廷了。”曹操撤军后,马超果然率领羌人,胡人进攻陇山以西的各郡县,各郡县都起来响应,只有作为凉州州府及汉阳郡府所在地的冀城坚守不降。
马超兼并了陇山以西的所有部队,张鲁又派大将杨昂率军援助马超,共有有一万余人,进攻冀城,从正月直攻到八月,朝廷救兵也没有到。凉州刺史韦康派别驾阎温出城,向夏侯渊求救。马超军在冀城外包围了好几层,阎温乘夜从水里秘密游出城去。第二天,马超部下士兵看到足迹,派人追踪,把阎温捉住。马超把阎温带到城下,命令阎温告诉城中守军说:“东方没有救兵。”阎温向城中大喊:“大军不过三天就会来到,你们努力坚守!”城中守军都流下眼泪,高呼万岁。马超虽然恼怒,但由于冀城很久攻不下,仍慢慢地进一步引诱阎温,希望他回心转意。阎温说:“奉事君主,只有一死,没有二心。而你竟想让长者说出那种违背道义的话吗!”马超于是杀死阎温。
过了些时候,外面的救兵仍没有来,刺史韦康及太守打算投降,杨阜大哭着劝阻他们说:“我们率领自己的父兄子弟,以大义互相勉励,誓死没有二心,就是为了协助你们守住此城。现在,怎么能放弃这唾于可得的功勋,陷入不义的罪名呢?”刺史、太守中听杨阜的劝阻,打开城门迎接马超。马超入城后,就杀死刺史、太守,自称征西将军,兼任并州牧、督凉州军事。
曹操命令夏侯渊率军援救冀城,还没到,冀城已经投降。夏侯渊率冀城还有二百余里时,马超出军迎战,夏侯渊作战失利。这时,号称氐王的氐人首领千万又起兵响应马超,驻军兴国,夏侯渊率军撤回。
正在这时,杨阜的妻子去世,杨阜向马超请假去安葬妻子。杨阜的表兄、天水人姜叙担任抚夷将军,率军驻在历城。杨阜见到姜叙和姜叙的母亲,抽泣不止,十分悲痛。姜叙说:“你为什么这样悲痛?”杨阜说:“守城而没能守住,长官被杀而不能同死,我还有什么脸活在世上!马超背叛父亲与皇上,残酷杀死本州的长官,这岂是我杨阜一个人忧心自责的问题,一州的士大夫都因此蒙受到耻辱。你拥有重兵,受命全权管理这一地区,而没有讨伐逆贼之心,从前,赵盾正是因为这样做而被史官记载为弑君的。马超虽然强大,但不讲道义,弱点很多,容易对付。”姜叙的母亲慨然说:“好了!姜叙,韦刺史遇难,也有你的责任,难道只是杨阜一个人吗!谁能不死,能死于忠义,就是死得其所。你只应快些行动,不要再管我;我自会为你担当,不会以我的余年牵累你。”姜叙就与同郡人赵昂、尹奉、武都人李俊等人,共同商议讨伐马超,又派人到冀城,结交安定人梁宽、南安人赵衢,让他们做内应。马超命令赵昂交出儿子赵月作为人质,赵昂对妻子士异说:“我们已经如此谋划,事情一定能成功,应当把赵月怎么办?”士异厉声回答:“能昭雪君父的大耻,就是掉脑袋也不足惜,何况一个儿子!”
杨阜与姜叙进兵,进入卤城,赵昂、尹奉占据祁山,以讨伐马超。马超听到消息,大怒,赵衢乘势编造理由,劝马超自己率军去进攻杨阜等人。马超出城后,赵衢与梁宽等关闭冀城城门,把马超的妻子儿女全部杀死。马超进退失据,于是袭击历城,捉到姜叙的母亲。姜叙的母亲痛骂马超,说:“你这个背叛父亲的逆子,杀害长官的恶贼,天地岂能长久容你,你不早死,还敢见人!”马超杀死她,又把赵昂的儿子赵月杀死。杨阜与马超大战,身受五处重伤。马超被杨阜等打败,就向南投奔张鲁。张鲁任命马超为都讲祭酒,打算把自己的女儿嫁给马超。有人对张鲁说:“像这样的人,不爱自己的父母,怎么能爱别人!”张鲁才打消嫁女的念头。曹操封赏讨伐马超的功臣,封十一个人为侯爵,杨阜被封为关内侯。
刘备即将平定蜀郡时,在汉中的马超知道张鲁是个不值得与其计议大事的人,张鲁的部将杨昂等人又多次诋毁他的才能,因此心中忧郁。刘备派建宁督邮李恢前去游说马超,马超便从武都逃到氐人部落,秘密写信给刘备请求归降。刘备派人制止了马超,但暗中派兵给以帮助。马超来到成都,刘备命他率军驻扎城北,成都城内的人非常震惊,心中恐惧。后来马超被封为平西将军。