话说刘备起兵攻打涪水关,早有细作传回关上杨怀、高沛。杨怀与高沛一边派人汇报给刘璋,一边聚将商量。杨怀道:“刘备军能征善战,手下大将张飞更是勇猛,曾在长板桥上吼退曹操百万大军。靠着关卡可能抵挡不住,不如高将军你领兵埋伏在关外。刘备军长途拔涉,人困马乏。等其安营扎寨,将军半夜放火偷袭,刘备军定会大乱,某再从关内杀出,使刘备头尾不能相救,必定大败。”高沛领命带兵前往埋伏起来。
刘备带兵来到涪水关外,看见蜀军防御严密,人人精神抖擞,气势高昴。冒险攻关必然死伤惨重,这是刘备不能承受得了。只好安排人马搭建营寨,再从长计议。
夜暮降临,中军大营内马良建议:“良有一计,如果成功必夺下涪水关。”刘备:“何计?”于是马良前前后后讲了一遍,刘备从之,便下命张飞和刘封、关平各自执行任务。
夜至三更,星云密布,奉命在埋伏的高沛带人悄悄地来到刘备军后营外观察,看着营内静悄悄的,除了几个哨兵在忽明忽暗的火把下亳无精神地站着。高沛暗呼:“真乃天助我也。”于是派了几人前去砍开营寨的栏栅,带兵冲了进去,一阵砍杀了几名哨兵。顿时刀光剑影,人翻马倒,火光四起。刘备的荆州兵死伤惨重,高沛更是勇猛非凡,无人能敌,便派人四处点火,把刘备的粮草一把火给烧着了。原来刘备按照马良的计策,张飞等人在前营埋伏等蜀军前来刧寨,关平和刘封二人关口下隐藏起来,以前是黄忠在后看守粮草的,今黄忠留守葭萌关,后营只安排了一名小将。不料杨怀安排高沛早出关外,从后营杀入。刘备看到后面火光大起,杀声连连,大吃一惊。本来粮草不足,要是烧没了,明天就没粮吃。急忙调张飞前去营救,张飞也知道粮草的重要性,立刻带了兵马杀过来。高沛杀得兴起,忽见一将迎面冲来,便调转马头一枪刺出,不料张飞力大无穷,加上战马的冲力,挥矛一挡一刺,高沛就被刺了个透心而过挂在张飞的长矛上。蜀兵看见了主将一招被杀,张飞如此勇猛,皆四处逃窜。关上的杨怀看见刘备营寨火光冲天,知道是高沛偷袭成功,立刻点兵派将开了城关门冲向刘备营寨。不料关平、刘封二将从左右两边包抄,蜀军失去指挥顿时大乱,互相踩踏,死伤无数。杨怀只能带着身边的亲兵突围,关平、刘封两路箭头似的杀向涪水关,趁着城门来不及关上时杀入关内。因杨杯、高沛两将带走了大量兵力,关、张两人轻松地攻上了关头上。杨怀带着残军想趁他们立足未稳重新夺回,却被关平用关羽家传春秋刀法中的拖刀法,砍成两半。经过一夜的拼杀,驻守涪水关的蜀军伤亡过半,其余大部分被刘备军给俘虏了,只有极少几个人逃往成都了。
刘备带着大军进了关内,收编降兵,补充粮草。次日犒劳大军,设宴庆祝不在话下。