黄忠再三请求带兵去攻打定军山斩杀夏侯渊。于是诸葛亮派法正当副将协助黄忠。
曹操得知刘备军大败张合等将领,大惊失色,赶忙亲自率领四十万大军反攻刘备。
黄忠听从法正反客为主的计谋,擒拿了夏侯尚。夏侯渊答应互相交换俘虏。黄忠一箭射死了夏侯尚,救回自己的部将陈式。夏侯渊大怒,正和黄忠恶打恶斗,押阵官突然鸣金收兵。夏侯渊问押阵官为何鸣金收兵,押阵官说山上有敌军埋伏。夏侯渊不敢再出战。
黄忠把定军山的曹将杜袭杀败,攻取了定军山。夏侯渊要夺回定军山,誓死要和黄忠大战。
黄忠以逸待劳,一刀斩了夏侯渊。张合大败而逃。
曹操听说夏侯渊被黄忠杀死,痛哭一场。急忙命令大军进攻定军山,要为夏侯渊报仇。
黄忠杀了夏侯渊特来葭荫关向刘备请功。刘备封黄忠为征西大将军。黄忠又要去夺曹操屯放在汉水北山脚下的粮草。诸葛亮命令赵云和黄忠同去。
黄忠自领兵马去烧曹军粮草,被张合、徐晃、文聘包围在阵中。赵云赶到救出了黄忠。曹操见赵云单枪匹马,左冲右杀在几十万兵马中如入无人之地,忍不住大怒,下令全军出动追杀赵云。赵云一个人威风凛凛地守在路口,曹军不知虚实,不敢进攻。赵云命令弓箭手放箭,曹军大乱,黄忠、张着等将领又从左右杀出,曹军大败。
曹操命令徐晃为先锋,王平作副将杀奔汉水而来。徐晃不听王平计策,自己领兵渡过汉水扎营。黄忠和赵云左右攻击徐晃,徐晃大败。徐晃逃过汉水责怪王平不救他,还要杀王平。王平投降了刘备。
曹操恼怒王平投降了刘备,亲率大军来攻夺汉水寨营。刘备和诸葛亮赶来助赵云守营。诸葛亮派赵云到土山上半夜打鼓,一连打了三夜。曹操深怕中埋伏,连退兵三十多里路,最后在空阔的地方扎营。
诸葛亮接连妙施小计吓得曹操更加恐慌。这时诸葛亮指挥五路大军直攻曹操。曹操被刘备手下将领杀了个措手不及。曹操害怕诸葛亮只得屯兵在斜谷界口,再不敢轻易出兵。
曹操进退两难。这时夏侯惇入帐请求传达夜间军号。曹操随口而出:鸡肋。行军主簿杨修马上就命令手下收拾行李准备撤退。曹操得知这个消息,立刻就以搅乱军心为理由杀了杨修。
第二天,曹操命令出兵攻打马超,被魏延杀得大败。曹操只得下令班师回朝。
刘备大败曹操,军心大振。众将领要推尊刘备为皇帝,刘备只敢自封汉中王。刘备立刘禅为王世子,大封有功将领,奖赏效力三军。
曹操得知刘备自称汉中王,又想举兵讨伐。司马懿为曹操献计:叫孙权发兵攻打荆州,刘备必然会分兵去救荆州,到时候可以统帅大军进取汉川,刘备首尾不能相顾,必败无疑。曹操连忙派人送信给孙权。