马超被调走后,曹操突然又发兵阳平关,趁夜突袭关外诸寨,杨任、杨柏等将抵挡不过,向阳平关内撤退,半路上又被夏侯渊与张郃伏击,杨柏被张郃斩杀,杨任率残军退至阳平关内。
随后,关外诸营寨皆被曹军攻占,曹操令大军开始进攻阳平关。
张卫见诸营已失,杨柏被杀,不敢再守,于是弃关而走,连夜逃回南郑城。
张鲁大怒,欲斩张卫与杨任,却被阎圃劝阻,言曹军马上就要兵临城下,此时不宜自斩大将,还是赶紧准备守城吧。
然而,失去了阳平关的汉中,怎么能抵挡得了曹操的三十万大军。
曹操令夏侯渊率领五千骑兵作为前锋,往南郑路上哨探,正好遇上率兵出城要将功抵罪的杨任。
杨氏诸将之中,数杨任武艺最高,挺枪与夏侯渊大战了三十回合不分胜负。夏侯渊算是一流武将中比较靠前的了,杨任能与其单挑三十回合,说明杨任至少也得是二流顶尖甚至能达到一流水平。
夏侯渊见一时胜不了杨任,便佯败而走,杨任立功心切,从后追来,却被夏侯渊用拖刀计斩于马下。
败军逃回城去,张鲁大惊失色,只好令张卫主持守城之事。
曹操率大军来到南城城后,令大军三面树立云梯,建造投石车进行攻打。
张鲁感觉抵挡不住,便要开门投降,张卫不愿降,便劝张鲁放火烧掉府库,领兵逃至巴中。
杨松趁机劝说张鲁投降,张鲁却犹豫不决,最终还是逃去了巴中,但也没有烧掉府库。
曹操大军进入南郑城,见张鲁只是封闭了府库,里面的财物丝毫无损,心中对张鲁也有些好印象,这家伙也算是给自己送了一份大礼,于是派人去巴中劝其投降。