张合带着三万大军,分成了三个营寨,都设在了地势险要的山边。一个叫做宕渠寨,一个叫做蒙头寨,还有一个叫做荡石寨。张合把每个寨的兵力都分了一半出去攻打巴西,剩下的一半就留在寨子里防守。很快,有探子把消息报到了巴西,说张合带着大军打过来了。
张飞一听到这个消息,马上就找来了雷铜商量对策。雷铜说:“阆中这个地方山势险恶,我们可以利用地形埋伏起来。将军您带着大军正面迎战,我就带着奇兵从旁边支援,这样一定能抓住张合。”张飞听了觉得很有道理,就拨了五千精兵给雷铜去埋伏。然后,他自己带着一万大军,在离阆中三十里的地方和张合的大军相遇了。
两军摆开了阵势,张飞骑着马冲了出来,直接向张合挑战。张合也挺着长枪冲了出来,两个人就打了起来。打了二十多个回合后,张合后面的军队突然大喊大叫起来。原来,他们看到山后面有蜀军的旗帜在晃动,以为是蜀军的援兵到了,所以就慌了起来。张合一看这个情况,也不敢再打下去了,就拨转马头往回跑。张飞在后面紧追不舍,前面雷铜又带着伏兵杀了出来。两面夹攻之下,张合的大军被打得大败亏输。
张飞和雷铜连夜追击张合的败军一直追到了宕渠山。张合还是按照原来的部署分兵守住三个寨子,并且在山上放了很多滚木和石头用来防守。张飞在离宕渠十里远的地方扎下了营寨,第二天就带着大军去挑战张合。可是张合就是不出来应战,只是在山上大吹大擂地喝酒。张飞让士兵们大声辱骂张合想要激怒他出来应战,可是张合就是不上当。
就这样相持了五十多天,张飞就在山前扎下大寨每天喝酒喝到大醉然后坐在山前辱骂张合。刘备派人去慰劳军队看到张飞整天喝酒非常担心就报告给了刘备。刘备一听大惊失色连忙去找诸葛亮商量对策。诸葛亮听了却笑了起来说:“原来是这样啊!军前可能没有好酒成都的美酒却很多可以装五十坛酒用三辆车送到军前给张将军喝。”
刘备说:“我弟弟张飞向来因为喝酒误事军师你为什么还要送酒给他呢?”诸葛亮笑着说:“主公您和翼德做了这么多年的兄弟还不知道他的为人吗?他虽然性格刚烈但是在收复四川的时候却能够义释严颜这可不是一般勇士能做到的事情啊。现在他和张合相持了五十多天每天喝酒大骂张合这并不是因为他贪杯而是他想用计策打败张合啊。”
刘备听了将信将疑地说:“虽然你这么说但是还是不能太大意了。你可以派魏延去协助他。”于是诸葛亮就命令魏延带着酒去军前助战,并且让魏延在酒车上插上黄旗写上“军前公用美酒”几个大字。魏延领命带着酒来到了张飞的营寨中把刘备赐酒的事情告诉了张飞。张飞拜谢了刘备的恩赐然后就让魏延和雷铜各自带着一支人马作为左右翼只等军中红旗一举就一起杀出。接着张飞就命令士兵们把美酒摆在帐篷里然后大张旗鼓地喝了起来。
张合在山上看到了这个情况就自言自语地说:“张飞这是在欺负我啊!”于是就传令下去当天晚上就下山去偷袭张飞的营寨,并且让蒙头和荡石两个寨子的兵马一起出动作为左右支援。当天晚上张合趁着月色微明就带着大军从山边小路悄悄地摸到了张飞的营寨前。他们远远地看到张飞的帐篷里灯火通明似乎正在里面喝酒作乐呢。
张合大喜过望就大喊一声带着大军直接冲进了张飞的中军大帐。可是等他们冲进去一看才发现里面坐着的竟然是一个草人!这时候张合才知道自己上当了连忙拨转马头往回跑。可是已经来不及了只见帐篷后面突然响起了连珠炮声一员大将挡住了他们的去路。这员大将睁着一双圆溜溜的大眼睛声如巨雷不是别人正是张飞!他挺着长矛骑着马直接向张合杀了过来。两个人在火光中大战了三十多个回合不分胜负。
张合一边打一边盼望着自己两个寨子的援兵能够快点赶来支援自己。可是他却不知道那两个寨子的兵马已经被魏延和雷铜带着人马给打败了并且还被他们顺势夺去了两个寨子。张合一看这个情况知道自己已经没有了退路只好带着残兵败将往瓦口关逃去了。张飞大获全胜把战报报到了成都刘备听了非常高兴这才知道原来张飞喝酒是为了用计策诱骗张合下山啊!
张合在瓦口关退守,原本的三万大军已经折损了二万,他急忙派人向曹洪求援。然而,曹洪却大怒,责备张合不听他的劝告,强行进军,丢失了重要的关口,现在又求援。因此,曹洪拒绝发兵,反而催促张合出战。张合无奈之下,只能定计,分兵两路去关口前山僻静处埋伏,打算诈败引诱张飞,然后截断他的归路。
当日,张合领军前进,正好遇到雷铜。两人交战不久,张合诈败逃走,雷铜紧追不舍。这时,埋伏的两路军马齐出,截断了雷铜的归路,张合回身一刺,将雷铜杀于马下。败军回报给张飞,张飞亲自前来挑战张合。张合再次诈败,但张飞这次没有追赶。张合又回身交战,不久又诈败逃走。张飞识破了张合的计谋,收军回寨。
张飞与魏延商议对策,决定将计就计。他们计划明日由张飞先引一军前往,魏延则引精兵在后,待伏兵出现时,魏延可分兵攻击。同时,他们准备了十余辆车,里面藏满柴草,堵住小路,放火烧之。这样,他们就能乘势擒拿张合,为雷铜报仇。
次日,张飞引兵前进,与张合交锋。战到十合时,张合再次诈败。张飞引马步军赶来,张合且战且走,引张飞过山峪口。然后张合将后军变为前军,再次扎营与张飞交战。他指望两路伏兵能出动围困张飞,但不想伏兵却被魏延的精兵赶到并赶入峪口。魏延的军队截住山路放火烧车,山谷中的草木都被点燃,烟雾弥漫了小径,使得张合的伏兵无法出动。
张飞只顾引军冲突张合的军阵,张合大败只能死命杀出一条路逃上瓦口关收聚败兵坚守不出。张飞和魏延连日攻打关隘都无法攻下。张飞见无法攻下关隘便将军队后退二十里与魏延一起引数十骑亲自去两边探察小路。
忽然他们看见有几个男女背着小包在山路上攀藤附葛而行。张飞马上用鞭指着这些人对魏延说:“夺取瓦口关的关键就在这些百姓身上。”他命令军士不要惊吓他们并好好地将这些百姓叫到马前。张飞用好言安抚他们并询问他们从哪里来。
百姓们告诉张飞他们是汉中的居民现在想回家乡。因为听说大军在厮杀堵塞了阆中的官道所以他们现在从苍溪绕过从梓潼山桧釿川进入汉中回家。张飞问他们这条路到瓦口关有多远百姓们回答说从梓潼山的小路可以到达瓦口关的背后。
张飞大喜带着这些百姓回到寨中给他们酒食然后吩咐魏延继续引兵攻打关隘他自己则亲自带领轻骑从梓潼山的小路去攻关后。他让百姓引路选了五百轻骑从小路前进。
而张合因为救兵不到心中正闷这时有人报告说魏延在关下攻打。张合披挂上马正准备下山忽然又报关后四五路火起不知道是哪里的兵马来了。张合亲自领兵来迎战只见旗开处张飞已经出现在他面前。张合大惊急忙往小路逃走但他的马已经疲惫不堪后面的张飞又追赶得非常紧急。张合只好弃马上山寻找小径而逃最终才得以逃脱。随行的只有十余人他们步行进入南郑去见曹洪。
曹洪见张合只剩下十余人非常愤怒地说:“我当初就告诉你不要去你非要取下文状要去。现在你折损了大半的兵马还不自杀回来做什么!”他喝令左右将张合推出斩首。但行军司马郭淮劝谏说:“‘三军易得一将难求’。张合虽然有罪但他是魏王所深爱的人不能随便杀掉。可以再给他五千兵马让他去攻取葭萌关牵动蜀军各处的兵力这样汉中自然就安定了。如果他再次失败就二罪并罚。”曹洪听从了郭淮的建议又给了张合五千兵马让他去攻取葭萌关张合领命而去。
葭萌关的守将孟达和霍峻得知张合率军前来,霍峻主张坚守,但孟达却坚持要出战,于是引军下关与张合交锋。然而,孟达大败而回。霍峻急忙向成都发送文书求援。刘备得知消息后,请诸葛亮商议对策。
诸葛亮召集众将在堂上商议,他表示:“现在葭萌关形势紧急,必须从阆中调回张飞,才能击退张合。”然而,法正却认为张飞镇守的阆中也是紧要之地,不可轻易调回。他建议在帐中诸将中选一人去对抗张合。
诸葛亮笑着说:“张合是魏国的名将,非等闲之辈可比。除非是张飞,否则无人能敌。”这时,老将黄忠挺身而出,厉声说道:“军师为何轻视众人!我虽然年老,但愿意斩下张合的首级,献于麾下。”
诸葛亮说:“汉升(黄忠的字)虽然勇猛,但毕竟年老,恐怕不是张合的对手。”黄忠听了,白发倒竖,说:“我虽然年老,但两臂仍能拉开三石之弓,浑身还有千斤之力,岂会敌不过张合这个匹夫!”说完,他走下堂,取下架上的大刀,轮动如飞,又连拽折了两张硬弓。