此前,张郃统兵进攻张飞镇守的巴西,被张飞击败,几乎是全军覆没,只身逃回定军山,夏侯渊本欲坚守,法正设计夺取定军山对面的高山使曹军失去地利,迫使夏侯渊主动出击,又以逸待劳,避朝锐,击暮归,一举击败定军山守军,夏侯渊也阵亡于乱军之中。张郃留守的大营兵力微薄,抵挡不住,撤往汉中,定军山失守。此战居功最高者非法正孝直莫属,可惜英年早逝,失此奇谋之士,蜀汉痛失栋梁之才。
东汉建安二十二年(217)十一月,蜀郡太守、扬武将军法正向刘备进言:“曹操一举而降张鲁,定汉中,不因此势以图巴蜀,而留夏侯渊、张郃屯守,身遂北还,此非其智不逮而力不足也,必将内有忧逼故耳。”建议刘备乘机攻取汉中:“此盖天以予我,时不可失也。”刘备采纳此建议,遂决定发兵北进,攻取汉中.
次年春,刘备以诸葛亮总理益州(今CD后方兵粮补给,以征虏将军巴西太守张飞、平西将军马超等率吴兰、雷铜等将,先进攻下辨(今甘肃成县);刘备与法正率翊军将军赵云、讨虏将军黄忠、牙门将军魏延等,向汉中进军。时曹操已进爵为魏王,以征西将军夏侯渊驻守阳平关(今勉县老城西),平寇将军徐晃驻军马鸣阁道(今四川广元西北),荡寇将军张郃守广石(今勉县西)。
二月,张飞进攻固山(今甘肃成县南山),扬言要断曹洪军后路。曹洪进击张飞、吴兰。吴兰战败,被斩杀。张飞、马超引兵退走。
四月,刘备攻马鸣,派将军陈式断绝马鸣阁道。魏军徐晃率兵截击,陈式军堕落山谷伤亡众多。不久,马鸣阁道为刘备军攻克。刘随即进攻广石及阳平关,夏侯渊与徐晃、张郃集兵抗击,刘备屡攻不克,遂急书益州增兵。诸葛亮征询从事杨洪意见,洪说:“汉中则益州咽喉,存亡之机会,若无汉中,则无蜀矣!此家门之祸,男子当战,女子当运,发兵何疑?”于是诸葛亮迅速调集兵力,派往汉中,增援刘备。
到建安二十四年(219)一月,刘备久攻阳平关仍未克,乃引军南渡汉水,于定军山前扎营。夏侯渊率兵前来争山,筑围与刘备军相峙,自率轻兵守南围,以张郃守东围。刘备军乘夜先攻东围,张郃军首战不利,渊分兵助郃。于是刘备用法正计策,命黄忠数次鼓噪而不攻,使夏侯渊松懈戒备,而后突然进攻南围,摧锋进击,势不可挡,渊军大败,黄忠刀劈夏侯渊于定军山下。
夏侯渊死,张郃急忙退守阳平关。魏军失帅,慌乱不知所为。督军杜袭和司马郭淮号令军中:“张将军国家名将也,刘备所惮,今日事急,非张将军不能安也。”遂推举张郃为主将,出兵安阵,军心方定。
次日,刘备欲再渡汉水攻阳平关。魏军诸将以为众寡不敌,欲以水为阵阻击刘备军。郭淮认为:“此示弱而不足挫敌,非算也。不如远水为阵,引而致之,半济而后击之,备可破也。”刘备见魏军退后远水布阵,迟疑而不敢渡江。
三月,魏王曹操以汉中危急,自长安出斜谷道,亲临汉中指挥作战。刘备集中兵力,扼险据守,不与交锋,拖延时间,消耗魏军。刘备派黄忠引兵袭取魏军北山下粮库,黄迟迟未回,又派赵云率数十骑前往侦视。赵与魏军突然遭遇,即勇猛冲其前阵,魏军大乱,赵且战且退。魏军散而复合,追至赵云营下。时沔阳长张翼正想关闭营门据守,赵云玩起了“空城计”,让兵士大开营门,偃旗息鼓。魏军到赵云营前,疑有埋伏,不敢再追而回。此时,赵云令士卒擂鼓震天,以劲弩于后追射,魏军惊骇慌乱,自相践踏,堕入河水溺死者无数。次日晨,刘备至赵云营视察,赞道:“子龙一身都是胆也”。
魏军与刘备军对峙月余,士卒逃亡甚多,军粮接应不上,士气低落。五月,曹操以“鸡肋”为口令放弃汉中,撤军北还。
七月,刘备自立汉中王,于沔阳(今勉县)旧州铺筑坛,陈兵列众,马超等46人上书东汉朝廷,请立刘备为王。群臣陪位,读祭讫,戴上王冠,就王位。以魏延为镇远将军、汉中太守,率兵屯守汉中。刘备率兵回CD次年在CD称帝,国号汉,史称“蜀汉”。从此,汉中遂成为蜀汉的北大门、诸葛亮伐魏的根据地。
定军山下摆战场,刀劈夏侯阵前亡。这一战,奠定了蜀汉基业,开辟了三国鼎立局面,是中国历史上具有划时代意义的一战。从此,中国进入了三国时代。