后周显德元年正月(954年),后周太祖郭威崩逝于滋德殿,由晋王郭荣(柴荣)入嗣宗祧,灵前即位,是为后周世宗。
同时,北汉国主刘崇听闻郭威已死,大喜过望,遂与契丹胡虏勾结联兵,自团柏谷(今山西祁县东)入寇潞州(今长治市潞州区),潞州节度使李筠向朝廷发回敌报。
周世宗接报后,想要亲征北汉,便召议群臣。冯道等人以世宗初继大统,人心不稳,太祖山陵未修妥,此次也可能是潞州方面的谣传,李筠惧敌等为由,劝世宗罢议。
世宗驳道:“我朝正逢先帝大丧之期,朕又初登极,那刘崇便自以为是入寇中原的好时机,做他的春秋大梦。朕以为眼下潞州告急之事必然不假,朕若统兵亲征,必能先声夺人,令宵小不敢轻视我朝。”
第二天世宗便下诏,令各州府招募壮勇之士,送入都中。由世宗亲自把他等编入禁军,整日操演,准备让他们随驾出征。不久之后又接到潞州急报,李筠出守太平驿(今长治市襄垣县西南太平村),部将穆令均率部出击,遭到北汉将领张元徽率部伏击,穆令均战死,所部几乎全灭,李筠退至潞州死守,乞待援军。
世宗得报后也不愿再与冯道等人商议,只召入王溥、王朴(平边策)两人,商议亲征一事,两人都赞成,只说需先调发各镇节度使,等将士汇集潞州后,御驾才启。一面令冯道奉太祖梓宫入陵,另留郑仁诲留守都城。
世宗车驾倍道兼行,不多日已至泽州(今山西晋城市),而刘崇则领着辽兵越过潞州不攻,直奔泽州而去,等到了高平南面的巴公原时(今泽州县巴公镇),才收到军报,得知周世宗也到了泽州,这才据住险要之地扎寨,先派出前锋试探周军,谁曾想被周军一阵痛击,汉军前锋败退。
周世宗担心刘崇会早早遁去,所以促令后至各军夤夜向前推进,参与会战,另下诏河阳(今孟州市以西)节度使刘词,星夜赶赴来援。次日清晨,刚赶到巴公原的周军,望见眼前的北汉军与辽军分头列阵,队伍甚是齐整,且兵力远远多于己方,都不禁倒吸了一口冷气。周世宗将各军进行分派在自己中军的四周,进行拱卫。其中樊爱能与何徽率右军居东。
两军对峙,周军人数方面较弱,最多也就己方的三分之二,刘崇见状,不禁懊恼道:“ 我看所来周兵与我军的人数也相差不大,早知如此,当初就不该去邀结辽兵。这样今日不但能破周军,更能使天下人心服,那就一举两得了。”帐下诸人听了此说,便纷纷前去道贺。(谁让你去勾结胡虏的?同时,你也想多了)
唯独辽将杨衮(新五代史中称杨衮,但百科中只查到杨衮为演义中杨继业之父)上阵观望周军后,对刘崇说道:“周军严整,不可轻敌。”刘崇却不耐烦地说道:“机不可失,请公不用再说了。今天我就要与周军决战,报吾儿(刘赟)之仇。”
刘崇挥动部队,令张元徽为前部攻击周军右侧,两军交锋未过数合,那樊爱能与何徽竟莫名其妙地率军而退,麾下步卒千人投降北汉,刘崇望见周军阵脚大动,便使弓弩齐发,率军继进。
周世宗见己方右军已乱,便亲自上阵督兵。眼见北汉军已全线压了过来,而周主又亲自上阵,顿时激出了一位禁军将领,大声对张永德道:“贼兵气势已骄,只需力战便可破敌。如今公麾下多有弓弩手,愿出为我军左翼,在下愿为右翼,我们去夹攻贼兵中军,不患不胜,国家安危,就在此一举了。”张永德称善,遂与说话之人分别率领二千余人,冲击夹攻刘崇,人人以一当百,北汉兵渐渐不能抵御,纷纷向后倒退。原来建议与张永德一起夹攻北汉军的,就是之后的宋太祖赵匡胤。
马仁瑀、马全义等人见状,也奋勇出击,更是阵斩北汉骁将张元徽,北汉此时已经溃不成军,进退无方了。而辽将杨衮,眼见此时周军势盛,也不敢进援,同时也恨那刘崇妄自尊大,不知进退,独自引着契丹军全军而退。(后周&宋、北汉、胡虏契丹这三方态势,与今相比,眼不眼熟?)
后刘词率生力军赶到,立刻投入战斗,万余北汉残兵被一路杀的血流成河,走投无路,或降或死,北汉辎重丧失无算。
次日,周世宗又下令进兵,那刘崇刚逃至高平,听说周军又杀了过来,就身披褐衣头戴斗笠,骑着胡马(向胡虏称臣时,由契丹主所赐),慌不择路下由雕窠岭(今长治市长子县西南)遁走,夜半迷路,强迫当地村民为向导,夜走百余里至晋州(今临汾),方知村民误导,当下杀死村民后北逃。至一地得了食物,刚要下筷时,听说周军又追了过来,便直接抛去碗筷,夺马而奔(早干嘛去了?称臣胡虏好玩吗?),遁归晋阳。