曹操攻下南郑后,随军从征的丞相府主簿司马懿便建议一鼓作气攻下益州,他说:“刘备得蜀日浅,蜀人未附,且为荆州事与孙权交涉,不在益州,实在是大好时机。”谋臣刘晔(音yè)也建议道:“今我军一举克复汉中,蜀人震惊,其势自倾。此时出兵,可一举破蜀,若等刘备安定,据险守要,则难攻入了。”曹操也觉得他们说得有理,但他深知刘备、诸葛亮足智多谋,必已看到这点,恐怕早有准备,据险要而不战,以逸待劳。那样的话,自己势必陷于进退维谷的难堪地步,因此宁可接受賨人归附,采取稳妥的渗透办法对付刘备。。曹操降张鲁占汉中后,蜀郡太守、扬武将军法正向刘备建议攻取汉中,他认为:占领汉中后,兴农积粮,观冀伺隙,则上可以进取关中,问鼎中原;中可以蚕食雍、凉,开拓疆域;下可以固守要害,保卫益州。现在汉中仅有夏侯渊、张郃二将据守,集中主力往攻,则可必胜。刘备采纳建议,决定进兵汉中。
建安二十三年,派部将吴兰、张飞等为先遣部队进至武都(治下辨,今甘肃成县西北),被魏军击败。于是,刘备留军师诸葛亮守益州,亲率大军北征。是年四月,进军至阳平关(今陕西勉县西)。夏侯渊、张郃、徐晃等率军阻击。刘备派部将陈式袭击马鸣阁(今四川广元北),企图切断曹军后方通道,被徐晃击败;亲自率兵攻打张郃据守的广石(今勉县西),不克。两军遂成相持态势,刘备写信给诸葛亮增调兵力。
七月,曹操恐汉中有失,决定亲征刘备。九月,统率大军到长安(今陕西西安西北)。二十四年正月,刘备率主力渡过沔水,顺山势隐蔽疾行,迂回到阳平关侧后之定军山(今陕西勉县南),依据险要地势,待机歼敌。夏侯渊为摆脱被动,率兵争夺定军山。讨虏将军黄忠居高临下,发动迅猛冲击,夏侯渊及刺史赵禺阵亡,曹军大败,退守阳平关东。司马郭淮和督军杜袭推举张郃继夏侯渊为魏军主将,在汉水以北列阵,欲待蜀军涉水半渡时进行反击,为刘备识破,隔水相持而不渡。
三月,曹操大军经斜谷(今陕西眉县西南)进入汉中,沿途派兵占据险要之地,欲寻刘备主力决战。刘备采取据险避战的办法,始终不与曹操主力争锋。曹军运送粮食至北山,被蜀将黄忠劫夺。蜀翊军将军赵云率数十骑兵巡逻,与曹魏大军猝然相遇,赵云从容退至营中,偃旗息鼓,大开营门,曹兵疑有埋伏而引退。云命鼓手擂鼓,其声震天。又命以劲弩射魏兵后卫。魏兵惊骇,自相践踏,堕汉水中死者甚多。刘备称赞赵云“子龙一身都为胆”。
曹刘两军又相持一个多月,曹操一直无法取胜,至五月,下令撤出进攻汉中的全部军队,刘备遂占据汉中。七月,刘备自称汉中王,提拔牙门将魏延为镇远将军、汉中太守。
战争千变万化,他也不知道汉中,对曹操而言是挺进益州的桥头堡,而在刘备眼中则是门户咽喉,因此双方势在必争。曹操为此,特意派大将张 进军宕渠(今四川渠县东北),以保卫汉中;刘备即差虎将张飞率1万精兵攻打张 ,经过50多天的激烈较量,张 渐渐不敌,张飞却越战越猛,终于击败张 ,把他赶回南郑。曹操先是坐镇汉中,意在等待时机进取益州,现因刘备利用地势险要,据险而守、伺机进攻,一步步逼近汉中,形势对他日见不利,他不愿主力牵制在此,便留下大将夏侯渊与刘备周旋,自己则率大军悄悄撤回邺城去了。
曹操平定汉中后,司马懿进言取蜀,曹操未采讷。曹操以久战兵疲,而孙权又袭扰合肥,要回兵救合肥。在这种情况下不攻蜀,肯定是对的。不然的话.搞不好会形成前门狼没打死,后门虎又进来的尴尬处境。
战争形势千变万化,说不好,也许就是命