在天监四年年初,虽然北魏的南伐还在进行,但梁武帝萧衍已经开始筹划北伐。早在天监二年二月,他将湘州刺史杨公则调回中央,命其率领禁卫军先行驻扎在洛口,为大军大举北伐做准备。杨公则接到命令时,已身染疾病,他对亲戚们说∶"过去,廉颇和马援都因年老而被朝廷弃之不用,他们尚且自请领兵出征。如今,朝廷不认为我已经老朽,以我为先锋,这与古人相比,已经对我很看重了,岂能因病推辞?马革裹尸,这是我的愿望啊!"遂打起精神,登船出发。到洛口以后,近在咫尺的寿春百姓纷纷归降,多达数千户。此时,北魏原扬州刺史元澄已调任定州刺史,新任刺史为薛真度。薛真度历任荆州刺史、豫州刺史、华州刺史、大司农卿等职,是一位对淮河地区非常熟悉的老将。
杨公则到来后,两位老将即展开了一场对决。薛真度派遣长史石荣与梁军交战,杨公则率部迎战,临阵将石荣斩杀,魏军大败,梁军乘胜追击,一直追到距离寿春数十里的地方,得胜而还。同年六月,南梁豫州刺史王超宗率军包围了北魏的小岘,薛真度派遣统军李叔仁等人率军反击,王超宗大败,八月十六日,北魏扬州军队又在羊石击破南梁姜庆真所部,战后,北魏朝廷即将薛真度免职,另外任命元嵩为扬州刺史。
北魏新任扬州刺史元嵩上任之时,梁军对寿春周边魏军镇戍的进攻还在继续。当时,梁湘州刺史杨公则率众二万,驻扎在洛口,梁将姜庆真率领五千梁军,驻扎在首陂,梁军左军将军骞小眼、军主何天祚、张俊兴等人率领七千人马,包围了魏军的陆城。
元嵩派遣统军封迈、王会等人率领步骑八千前去救援。北魏援军进抵陆城后,梁军即趁夜撤围而去,魏军追击,斩杀了数千梁军,杨公则、姜庆真退还马头。南梁徐州刺史昌义之率军驻扎在高皇,派遣三支部队偷袭阴陵,由于淮河水浅无法通行大型战船,这支梁军也驻扎在马头。
此时,梁将田道龙、何景先等人率领三千人马已经进抵衡山,兵锋也直指陆城。元嵩派遣兼统军李叔仁等人增援合肥、小岘、杨石,屡屡击败梁军。梁征虏将军赵草率军驻扎在黄口,元嵩派遣军司赵炽等人前往讨伐。魏军先派遣统军安伯丑趁夜在下蔡设伏与下蔡戍主王虎等人前后夹击,大败梁军,梁军几乎全军覆没。北魏统军李叔仁等人又夜袭陕石,将梁军击破。梁将姜庆真进据肥汭,冠军将军曹天宝屯于鸡口,尹明世屯兵东狭石。元嵩命令羊引率军屯在淮西,与梁军相距十里,还有魏军一万部队遥为声援。魏军集结后,向寿春周围的梁军军营发起进攻,梁军再度大败。魏统军牛敬宾乘胜进攻东狭石,尹明世趁夜逃遁。败退的姜庆真率领残兵败将顺流而下,魏军下蔡戍主王略又在半道截击,梁军又被斩杀了很多人。战后,杨公则即死于军中,时年六十一岁。
北魏寿春像一把尖刀一样插入淮南,将南朝江淮防线搅得支离破碎,萧衍决定从收复寿春入手,恢复淮河防线,这是他发起这次北伐的目的。杨公则等人在寿春周边地区与魏军发生的这一系列战斗,只是梁武帝大举北伐的前哨战,但梁军的进攻却遭到了魏军顽强的抵抗,梁军的战斗遭到了挫败。同年十月五日,梁武帝正式发布大举北伐的命令,他任命扬州刺史临川王萧宏为都督北讨诸军事,以尚书右仆射柳恢为副将。梁朝王公贵族以下官员都向朝廷上缴租税、稻米,支援大军。萧宏将大本营设在洛口。
萧衍对这次北伐非常重视,对萧宏寄予了厚望,给萧宏之军配备了大量先进的武器装备,北魏人认为近百年南方军队的武器、军容从未有如此之精、之盛。在后方,梁朝的统治机器全部围绕着这次北伐而高速运转着。时任左卫将军的梁武帝亲信吕僧珍白天在中书省里值班,夜里又到秘书省值班;侍中徐勉在宫中负责起草军国文书,日夜操劳,往往数十天才回家一次。
天监五年(公元506年),梁魏之间的战事进一步扩大。梁城(安徽省淮南市田家庵附近)、洛口、合肥,分别位于寿春的西北、东北和东南方向,这三座镇戍与寿春互为表里,梁军要想拿下寿春,就必须先占领外围的这三座镇戍,而梁城和洛口距离寿春较近,梁军占领这两座堡垒后,不仅可以确保援军源源不断地沿淮河而来,而且可以切断魏军对寿春的增援,对寿春形成巨大的压力。
此时驻守梁城的正是投降北魏的南朝名将陈伯之。一月,南梁徐州刺史昌义之率军朝梁城发起进攻。与此同时,为了牵制魏军,萧衍还下令冀州刺史桓和率部进击魏国南青州、,但无法取胜。二月,昌义之所部与陈伯之的魏军发生战斗,昌义之战败。与此同时,西线梁军也遭到了失败。四月二十七日,魏军大破梁军,南梁辅国将军王花、龙骧将军申天化被杀,梁军损失了两千多人,魏军一直追到汉水北岸,攻拔了梁国的五座城池。
随着战事的扩大,北魏也采取了一系列的因应措施。二月,北魏宣武帝下诏向王公大臣征求意见建议。治书侍御史阳固上书称;"当务之急是要亲近宗室,勤于政务,重视农桑,贬低工人和商人的地位,根绝谈玄之风,减少花在宗庙上的费用,以拯救百姓饥寒之苦。"当时,宣武帝信任高肇,疏远宗室,又喜好佛法,不问政事,因此,阳固才特意指出。三月,元恪又下诏以"戎旅大兴,诏罢诸作"。四月十六日、北魏政府任命中山王元英为征南将军、都督扬州徐州二州诸军事、率领十万魏军抵御梁军,宣武帝授权元英可以全权指挥所属各州郡的军队。
在寿阳前线,临川王萧宏的记室参军丘迟给魏将陈伯之写下了著名的《与陈伯之书》。丘迟的这封劝降书,晓之以理,动之以情,陈伯之接到这封书信以后,即于三月二十五日率领寿阳和梁城的本部八千余众投降了梁军。魏国政府诛杀了陈伯之的儿子陈虎牙。梁武帝下诏任命陈伯之为西豫州刺史,还未上任,又改任为通直散骑常侍,后来,陈伯之死于家中。
陈伯之的投降让江淮战场的战局发生了有利于梁军的巨大变化。
五月,梁军即全线对魏军发起了攻势∶梁将、萧衍堂弟萧晶率军进攻北魏徐州,包围了淮阳(江苏省淮安市淮阴区);萧衍的舅舅、太子右卫率张惠绍率领十万大军进攻北魏宿豫(江苏省泗阳县西北);萧宏率领大军进攻梁城;韦叡进攻合肥。
战役之初,梁军进展顺利。宿豫方向,张惠绍任命宋黑为徐州刺史,率领两万梁军,于五月七日占领宿豫,生擒北魏戍主马成龙,并包围了高冢戍。张惠绍之军号令严明,一直挺进到下邳,下邳百姓大多想投降梁军。张惠绍对大家说∶"我如果攻陷了城池,大家自然就变成了国家的百姓;如果进展不利,将让你们白白离开故乡,这不是朝廷吊民伐罪的本意。如今,你们不必抛妻别子前来投靠,只用像往常一样生活就行。"当地百姓都非常感激。梁城方向,梁军北徐州刺史昌义之率军一举攻克梁城,斩杀了魏将清清。
南路进攻合肥的韦叡之军也取得了进展,韦叡计划水淹合肥。在夜里,韦叡亲自率领梁军在肥水之上修筑围堰,很快,围堰就修好了,水位上涨,梁军战舰陆续抵达。魏军原来在合肥东西分别修筑了两座卫星小城,以夹辅合肥。韦叡决定先进攻这两座小城。就在梁军攻城过程中,魏将杨灵胤(羊灵引)率领五万援军突然来到合肥城下,韦叡率军进击杨灵胤,将其击破。
修好淝水堤坝后,韦叡命令军主王怀静在源水岸边又修筑了一座小城,率领一千多人驻守在那里。魏军集中兵力攻克了这座小城,梁军一千余名将士全部战死,攻陷小城后,魏军乘胜攻到堤坝下面,声势浩大。韦叡亲自率军迎战,将魏军击退。等到魏军稍稍后退后,韦叡又下令在堤坝上修筑堡垒固守。守好堤坝后,韦叡调派舰桥与合肥城墙一样高的斗舰前来,将合肥城四面包围了起来。城内魏军也无计可施,合肥守将杜元伦登上城墙督战,又被梁军弩箭射杀。五月十七日,合肥城遂瓦解。
在青州战场上,六月七日,青冀二州刺史桓和率部攻克了北魏朐山城(江苏省东海县)。七月三日,又占领了固城(山东省临沂市西南)。
梁军攻克合肥后,梁武帝即下诏命令南路各军向东陵(今地不详)进发。东陵距离魏军另外一个据点璧城(今地不详)仅有二十里,一场大战又将爆发,然而,就在南线梁军捷报频传之时,北线梁军却遭到了魏军顽强的抵抗,战况再次出现了逆转。
在陈伯之投降梁军二十天后,北魏朝廷即派遣元英南征,在萧宏攻克梁城七天后、合肥陷落的当天,北魏朝廷又增派尚书元遥率军南下。七月二十六日,宣武帝又下诏征发定州、冀州、瀛洲、相州、并州、肆州六州十万人作为南征的后援部队。八月十七日,他命令平南将军安乐王元诠率领这十万部队南下淮南。当时,北魏名将奚康生正在家中为亡母服丧,宣武帝下诏任命他为持节、假平南将军,命令其率领南青州的部队抵御梁军。显然,宣武帝决心不惜一切代价保住在淮南的军事存在。
北魏中山王元英首先在宿豫方向取得突破。七月二十五日,南梁徐州刺史王伯敖与北魏中山王元英所部在阴陵(安徽省定远县西北)交战,王伯敖大败,梁将二十五人被杀,战死五千多人。北魏宣武帝下诏任命奚康生为武卫将军、持节、假平南将军,率领三千羽林军,一战击败了宋黑。
梁武帝派遣将军角念率领一万部队驻扎在蒙山(山东省蒙阴县南),招诱北魏兖州地区的居民,归降的百姓数量很多。当时,辅国将军萧及率领两万部队驻扎在固城,桓和以及冠军将军鲁显文、骁骑将军相文玉等率众一万驻扎在孤山。青冀及徐兖北部战场直接关系到淮河战场的后方,对此,北魏朝廷非常担心,北魏朝廷即将曾在汉中、现任度支尚书的邢峦调任使持节、都督东讨诸军事、安东将军。
邢峦到任后,即派遣统军樊鲁讨伐相文玉,别将元恒进攻固城,统军毕祖朽进讨角念。八月十日,魏将樊鲁大破桓和、相文玉等人。元恒、毕祖朽也分别击败了梁军,北魏兖州全境被平定。接着,邢峦又率领魏军在睢口(安徽省泗水县境)击破梁将蓝怀恭,乘胜包围了宿豫。蓝怀恭等人又在淮南筑城,企图切断水陆之路。邢峦亲自率领魏军从河水南岸进击,另外派遣平南将军杨大眼从北岸夹击,统军刘思祖等人在河水两岸制造木筏,纵火焚烧梁军的战舰。魏军齐头并进,拔掉梁军的木栅,填埋城外的壕沟,从四面八方朝宿豫城发起了猛攻,一时间火光冲天,喊杀声震天动地、九月十一日,魏军遂攻陷了清水南城,阵斩梁将蓝怀恭,活捉梁列侯、列将、直阁、直后三十余人,俘斩一万余人。张惠绍放弃宿豫,萧曷放弃淮阳南逃,魏军缴获大米四十余万石。
梁军在青冀徐兖四州发起的攻势,其实只是开辟的第二战场,目的并非要夺取这里的土地,而是为了牵制魏军主力,以策应主力大军拿下寿阳。虽然梁武帝对此作出精心的部署,前线梁军也是旗开得胜,很快就拿下了合肥、梁城、洛口等要地,完成了对寿春的远距离包围,但是,由于统帅临川王萧宏素来性格就非常懦弱,当梁军前锋顺利拿下梁城之后,诸将纷纷请求乘胜深入,抓紧时间攻下寿阳,可是,萧宏却一再贻误了战机。不久,魏军即取得了阴陵、宿豫之战的胜利,北魏宣武帝下诏命令元英、邢峦率领魏军渡过淮河,准备发起对梁城的反攻。
梁武帝计划中的寿春大战并没有爆发,不仅如此,而且,得胜后的魏军已经消除了淮北地区的威胁,可以全力发起对寿春周边地区梁军的反包围了,整个战局发生了逆转。
听到北魏大军渡过淮河的消息,萧宏吓得魂不附体,慌忙召集众将商议退军。吕僧珍建议分出一部分军队交给裴邃前去进攻寿阳,大队人马继续驻扎在洛口,抵御南下的魏军,但萧宏不从,他下令:"军中胆敢擅自前行的,斩!"听到萧宏的这个命令,全军将士无不怒火万丈,但又无可奈何。
此时,荆州方面的战斗已经结束,北魏朝廷得以将荆州方面的军队调往淮河战场。九月二十七日深夜,洛口天气突变,一夜狂风暴雨,梁军军中无故发生夜惊。萧宏吓得六神无主,与身边的数名骑兵抛弃大营,狂奔而逃。将士们到处寻找不到主帅萧宏,也都四散逃命而去。
看到梁军自行溃败,魏军乘胜追杀,杀死了梁军近五万人,魏军缴获梁军遗弃的三十万石大米。萧宏乘坐小船与柳淡等五人沿着淮河顺流而下,渡过长江,深夜来到白石垒请求入城。临汝侯萧渊猷是萧衍大哥萧懿的第三子,他登上城楼对叔叔萧宏说∶"百万之师,一旦奔散,国家存亡,还未可知。恐怕奸诈之人会借机发动叛乱,深夜不可打开城门。"萧宏无言以对,萧渊猷命人用绳索从城上将食物缒下,给萧宏等人果腹。当时,昌义之之军驻扎在梁城,张惠绍之军在下邳,韦叡之军在东陵,听说萧宏在洛口惨败的消息后,各路梁军均开始后撤。在撤退中,韦叡命令辎重先行,自己乘坐小轿亲自断后,魏军素来畏服他的威名,只敢远远望着,不敢追击,就这样,韦叡之军毫发无损地回到了合肥,梁朝遂以合肥为豫州的州治。
得知洛口大捷后,宣武帝下令中山王元英乘胜荡平南梁,于是,魏军继续追击,一举攻克了马头城,南梁冠军将军、马头戍主朱思远弃城逃走。十月,魏军将城内的粮草全部转移到了淮河以北。南梁听到这个消息,众臣都说∶"魏军将粮草都转移到了淮河以北,估计不会继续南下了。"梁武帝萧衍却说∶"不对。这肯定是想继续南下故意放的烟幕弹而已。"遂下令整修钟离城,让昌义之做好战前的准备工作。
梁武帝的这次北伐以惨败而告终。尽管梁武帝为这次北伐做了大量的准备工作,但由于主帅萧宏的无能,致使梁军不仅没有取得应有的战果,相反,淮南之地也面临岌岌可危的境地。
实事求是地讲,梁武帝在选择北伐的时机上是适当的∶一是,魏军已经占领了梁州,并试图一举吞并益州,如果魏军集中兵力进攻益州的话,梁军将很难守住。一旦益州易手,西晋统一中国的一幕将会重演。此时,在淮泗方向对北魏发起进攻,调动敌人按照我方的步调行动,无疑是一步变被动为主动的妙棋。二是,在北伐之初,北魏其实已经面临了数面作战的窘境。首先是仇池氏族的叛乱,其次,在秦州的屠各也发动了叛乱。随着关中地区局势的发展,北魏朝廷又任命征西将军于劲节制诸军,秦陇百姓的起义有力地支援了梁朝的北伐行动,直到天监五年六七月间,魏军才艰难平定了起义。三是,北魏统治阶层内部矛盾重重。
然而,在梁军初战告捷后,最终大败,究其原因,大致有以下两点。一是梁武帝用人失当。这一点显而易见,梁朝刚刚建立,百废待兴,不少将领都曾经是南齐的臣子,梁武帝重用宗室也是出于无奈,原无可厚非。但是,战争绝非儿戏,尤其在使用统帅时更要慎之又慎。梁武帝以毫无帅才的临川王萧宏担任主帅显然是一着臭棋。
二是战略部署不当。梁武帝着眼全局,在北伐时,虽然主要以夺取寿春为目标,但在荆州雍州、青州冀州、徐州兖州等方向也都向魏国境内发起了进攻,牵制了魏军,使得一时之间魏军分辨不清梁军的主攻目标,这都是正确的。徐兖方向梁军一度进抵徐州城下,青冀方向梁军进抵固城等山东腹地,也都有力地支援了正面战场的战斗,但是,梁武帝用于次要战场上的兵力尤其是徐兖方向的兵力过多、这也在一定程度上削弱了寿春方向的兵力。次要方向其实不是以占领敌人土地为目的,主要是为了迷惑和牵制敌人,然而,从次要方向梁军的人数、表现上可以看出,梁武帝在次要方向的用兵也是以夺取魏国城池为目标的,这样一来,原本属于牵制作用的这几支梁军的任务就变成了与主力部队一样,而整个战线也随之变成了多路平推,没有重点了,这也给魏军各个击破创造了条件。