趙匡胤部署攻蜀,後蜀皇帝孟昶聞訊,欲依託川陝險要地勢,嚴兵拒守,同時遣使約北漢,謀求共同抗宋。後蜀使臣趙彥韜途經大宋,見宋國力強盛而生怯意,思及蜀主奢縱荒淫,便投靠了大宋。趙彥韜投靠大宋後,悉數告知蜀軍兵力部署,趙匡胤遂下令出兵。
東路公元964年十一月,趙匡胤命分兵兩路:北路為主力,命王全斌任西川行營前軍都部署,率領禁軍步兵騎兵二萬人、各州軍隊一萬人由鳳州路進討,由北而南下,經興州、三泉,破劍門;東路以劉光義任副都部署與都監曹彬率步騎2萬,自歸州(今湖北興山南)沿長江西上,爾後攻取江防重鎮夔州,破東川防線;
若劍門、夔州一破,則蜀無險可守,兩路分進合擊,約期會攻成都即可取蜀。
孟昶得知,命王昭遠為北面行營都統,率兵數萬北上扼守利州、劍門(今四川劍閣)等關隘。
王昭遠號稱蜀中諸葛亮,以方略自任,始發成都時,蜀主命宰相李昊等為之於城外餞行。昭遠手執鐵如意,以為北方宋軍愚蠻不通軍變,略施謀略即可勝之。酒酣,攘臂謂昊曰:"吾此行何止克敵,當領此二三萬雕面惡少兒,取中原如反掌耳!"。學諸葛亮吹牛倒是會了,果然不愧是小諸葛。
當年諸葛先生七出祁山都擋不住蜀漢滅亡,今天這小諸葛王昭遠又有何能耐呢!就在那年十二月,王昭遠一入前線,就三戰三敗,狼狽逃竄,自此不敢與宋軍相抗,北路軍王全斌佔領利州;965年正月,北路宋軍突破劍門險要,大敗蜀軍,俘王昭遠,繼佔領劍州(四川劍閣)。東路劉廷讓也順利突破突破巴東咽喉夔州(奉節),連克萬、開、忠、遂等州。兩路直逼成都,孟昶舉城投降,後蜀滅亡。
此次出兵滅蜀比後唐滅蜀還快,只用了66天。古語有云:蜀乃天府之國,易守難攻,誠是欺人之談,蜀有什麼險可守,五代前後兩蜀滅亡沒有熬過一個季度的。劉邦、劉備能據蜀而成就大事,那是這兩位厲害,蜀地故能為其所用。劉備換成劉禪,還是那個蜀,卻不消一會就給滅掉了。
但是,蜀地的確是富饒,無論誰入了蜀地都讓天子起疑。王全斌做為破蜀首功,為求自保,他爭財求利,放縱士卒,後來釀成全師雄之亂。這件事對於趙匡胤則是好事,一來可以將已降的蜀軍當中不服者全部除掉,消弱蜀本土固有勢力,利於真正吃掉蜀地;其二王全斌居功蜀地,本是難治,此下就可以拿下了,以儆效尤。
其實,王全斌此舉可謂深明宋太祖趙匡胤的憂慮。趙匡胤也是懂事之人,他不要人頭,只要解決問題。王全斌等人為大宋立功,雖然犯法,趙匡胤也不打算讓獄吏汙辱他,只令中書省問清罪狀,王全斌等人乾脆供認不諱。趙匡胤就下詔,宣示王全斌等人的罪狀,爾後降職仍予富貴。君臣顧及了彼此的面子,兩下相安。
大宋領地大幅擴張,趙匡胤不想攻下一地丟一地,他要穩打穩紮中央集權,不能讓這才拿下的領地成為下一個強藩,所以他將自已改良了的節鎮制強力執行下來,各節度使不得有所屬藩鎮的吏治與財權,精兵全收歸禁衛軍。
公元969年,趙匡胤見時機成熟,把地方節度使都請到京城,進行了二次杯酒釋兵權。之後給節度使們一個無權的高官位,讓他們自己就在京城“養老”,節度使們不幹也不行啊!屬鎮要錢沒錢,兵又少,比起禁軍那都是殘弱,只能乖乖的認命養老了。
這樣,大宋全境安定,國力更強盛了,畢竟內耗已降至最少,趙匡胤又可以再次開啟征服天下的日程了。在荊湖、後蜀滅亡後,大宋軍威大漲,南唐再次臣服(早已在柴榮時就去帝稱臣,趙匡胤上位繼續向宋稱臣),吳越自忖不是大宋敵手也主動臣服,只有南漢皇帝劉鋹因為地理原因無所憂懼,拒絕附宋。
公元969年六月,趙匡胤決定攻下南方唯一一個未歸附中原的藩鎮南漢(兩廣地區)。他以右補闕王明為荊湖轉運使,做出戰物資準備。
次年970年九月初一,命潭州防禦使潘美為賀州道行營兵馬都部署,率十州兵力長驅南下,中間突破,直趨賀州(廣西賀縣)。潘美聲言沿賀水東取南漢國都興王府(廣州),期望誘殲南漢軍主力。於是劉鋹派大將伍彥柔率水師溯鬱江、賀水西上增援,宋軍作為攻方,能引敵出動,對他們而言是最極有利的。潘美伏擊援軍獲勝,殺伍彥柔,佔領賀州,初戰告捷。南漢軍為何敢於出動出擊,一是想以攻為守,二是覺得自己人數佔優,卻不知宋之禁衛軍早在柴榮時代已全為精兵了,數雖少,戰力卻非同凡響。
十二月,宋軍進至韶州(廣東韶關),南漢都統李承渥率兵十萬於蓮花峰下,列象陣迎擊宋軍,宋軍以強弓勁弩破陣,佔領韶州。公元971年正月,宋軍攻克英、雄兩州。二月,進至馬徑(廣州北),直逼南漢國都興王府,劉鋹欲降,郭崇嶽雖力阻,但他也無抗宋之良法,唯頑守而已,希望宋軍能無功而返。然而,宋軍決意要滅掉南漢,郭崇嶽軍最終被宋軍以火攻打敗。
宋軍繼而攻陷興王府,擒俘劉鋹押送到京師,南漢滅亡。自此以來,南面已全部收歸大宋了。南唐、吳越雖已稱臣,但大宋的行政權卻無法觸及此兩地。這符合過去的藩鎮生存法,但不符合趙匡胤的新節鎮制度,降表在趙匡胤看來不算什麼,他要的是實務,所以他有更進一步的想法。