南唐奉化军节度使皇甫晖、常州团练使姚凤率领号称十五万的军队,驻扎在清流关(今安徽滁州西郊关山中段),赵匡胤率军将其击败。赵匡胤追到城下,皇甫晖请布阵决胜,赵匡胤笑着同意。皇甫晖摆好阵式出战,赵匡胤抱着马脖子直冲南唐阵内,砍中皇甫晖的脑袋,将其与姚凤一同擒获。其父赵弘殷时任马军副都指挥使,率军半夜时来到城下,传呼开门,赵匡胤说:“父子诚然是至亲,但是城门开关,却是国家的事情。”等到天亮,赵弘殷才得以进城。定武军节度使韩令坤攻下扬州,南唐军又来争夺,韩令坤主张退兵,柴荣命令赵匡胤率兵二千赶往六合。赵匡胤下令说:“扬州兵敢有过六合的,砍断他们的脚。”韩令坤才固守扬州。赵匡胤不久在六合东面打败南唐齐王李景达,斩杀一万多人。回师后,赵匡胤被任命为殿前都指挥使,不久又被加授为定国军节度使。
显德四年(957年)春,赵匡胤跟随柴荣出征寿春,攻克连珠寨,乘势攻下寿州。回师后,柴荣又拜他为义成军节度使、检校太保,仍任殿前都指挥使。此年冬,赵匡胤跟随柴荣征伐濠州、泗州,充当前锋。此时,南唐在十八里滩扎寨,柴荣刚刚商议用骆驼摆渡军队时,而赵匡胤已率先单骑横渡而过,他的部下骑兵也紧随他渡过了河,因而攻破南唐军寨。又用缴获的南唐战舰乘胜攻克泗州。南唐在清口驻屯军队,赵匡胤跟柴荣两翼分兵沿淮河东下,连夜追到山阳,俘获南唐保义军节度使陈承昭,因而攻下楚州。赵匡胤乘胜进军,在迎銮江口打败南唐军,直抵南岸,烧毁其营寨。又在瓜步攻破南唐军,淮南最终平定。南唐中主李璟畏惧赵匡胤的威名,派遣使臣送给赵匡胤一封信,馈赠三千两白金,企图使用离间计。赵匡胤收到后,把白金全部送到内府,南唐的离间计失败。
显德五年(958年),赵匡胤改任忠武军节度使。次年,柴荣北伐,赵匡胤担任水陆都部署。到达莫州,先到瓦桥关,守将姚内斌投降;又打退几千名契丹骑兵,关南平定。柴荣在行军路上,审阅各地所上文书,得到一只皮口袋,袋中有一块三尺多长的木板,上面写着“点检作天子”,柴荣感到这件事十分奇怪。当时张永德任殿前都点检,柴荣卧病回京,命赵匡胤任检校太傅、殿前都点检,以接替张永德。同年,柴荣驾崩,年仅七岁的柴宗训(后周恭帝)继位,赵匡胤改任归德军节度使、检校太尉。
陈桥兵变
显德七年(960年)正月初一,风闻契丹和北汉联兵南下,宰相范质等人不辨真假,匆忙派遣赵匡胤统率诸军北上抵御。正月初二,赵匡胤统率大军离开都