齐与北魏的战争

齐与北魏的战争，是指中国历史上南北朝时期，在北魏孝文帝在位期间北魏与南齐之间发生的一连串战争。战争大致可以分为三次，分别发生于479年－481年、494年－495年及497年－499年。前两次南齐都能成功防御北魏的进攻，惟第三次北魏成功攻陷南齐沔北地区，并击败欲收复失土的齐军。主要战场为今天河南、安徽、湖北、江苏及四川地区。
第一次.
背景.
北魏经历过刘宋初期太武帝向南扩张后获得洛阳在内黄河以南土地，至466年宋明帝即位后因与晋安王刘子勋争位，因宋徐州刺史薛安都降魏之机在往后数年内夺得历城（今山东济南市历城区）、彭城（今江苏徐州市）在内的青徐之地；国土扩张以外亦藉战争收获了大量财宝充实国库。另一方面北魏亦继续推行农耕发展，整顿吏治、轻徭薄赋，让人民安居生息。文成、献文帝在位期间除薛安都降魏一事外亦没有对南朝的大型军事行动，虽然国内仍时有征伐内叛之事，但北魏国力仍然获得增长。
南朝方面，因刘宋宗室内讧，义阳王刘昶于465年（宋景和元年、魏和平六年）因逃避侄儿宋前废帝逼害而出逃，刘宋宗室亦在后续各项政治事件中被屠灭殆尽，连年的君臣贪侈乱政及内乱亦造成国力耗损，人民亦苦于苛政。权臣萧道成在宋后废帝被弑后掌权，消灭国内最大反对力量荆州刺史沈攸之后，在479年四月（齐建元元年、魏太和三年）逼宋顺帝禅让帝位于己，篡宋建齐自立，是为齐高帝。萧氏篡宋后不久便将宋顺帝以内余下的刘宋皇族全数杀害。齐高帝即位后亦意图改革，著力革除刘宋皇室过往奢侈之风，推广节俭和禁止王室过度与民争利。更意图清查户籍，为南齐扩大租役人口。
北逃的刘昶受北魏朝廷恩遇，封丹阳王，并三娶公主。但刘昶一直都思念南方，如在听到有人奏述刘宋内乱时都会忍不住哭了出来，感动到身边人。至萧氏篡宋后，魏廷就打算以刘昶名义伐齐，宣称灭齐后会为他恢复宋室。
事前准备.
萧道成篡宋后就想到北魏会奉刘昶名义南侵，故不久就调兖州刺史垣崇祖为豫州刺史，命他镇守预期会成为北魏进攻目标的寿春（今安徽寿县）。另一方面，在前一年（478年，宋升明二年、魏太和二年），仍为宋臣的萧道成派了王洪范出使柔然，和对方约定伐魏。479年八月，柔然派十多万骑兵进攻北魏，到魏都平城（今山西大同市）外七百里后仅在燕然山打猎后回军；而萧道成因新篡位而没有出兵响应柔然。
另一方面，萧道成次子萧嶷在479年正月调任荆州刺史，上任后即大量赦免当地大批因参与沈攸之起事而下狱受罚者，又减免赋税及约束官吏，萧道成篡位后更不等朝廷赦令就先行免除领下在升明二年前所欠的诸逋债款，种种措施令百姓高兴，王俭亦称他「旬日而治，岂不休哉」。原本萧道成已下诏命萧嶷还为扬州刺史，但在王俭劝说和北魏将南侵的形势下，决定让萧嶷留镇荆州，并加湘州刺史、让他安抚当地。
经过.
479年十一月，北魏命假梁郡王元嘉领二将出兵淮阴（今江西淮安市）、陇西公拓跋琛等三将出兵广陵（今江苏扬州市）、河东公薛虎子等三将出兵寿春，让刘昶随军并以他作号召。另外，早年降魏的大阳蛮帅桓诞此时亦自请为前锋，魏廷遂以桓诞为南征西道大都督，让他进攻齐司州义阳郡。
北魏出兵后，义阳平民谢天盖亦举应响应北魏的军事行动，自称司州刺史，魏廷又以乐陵镇将韦珍领兵接应天盖。齐司州刺史萧景先立即反应讨伐谢天盖，都督邻近的荆雍二州之萧嶷亦派了中兵参军萧惠朗领二千兵协助萧景先，韦珍只好抄略七千户人撤返。广陵方面，驻镇的南兖州刺史王敬则知南攻之魏军渡过淮河后便弃镇南奔建康。至480年（齐建元二年、魏太和五年）正月拓跋琛攻陷马头戍（今安徽怀远县南），马头太守刘从战死，消息传到建康后齐高帝宣布内外纂严，并命南郡王萧长懋出镇石头城作防御。魏军紧接进攻钟离，却遭徐州刺史崔文仲击败，崔文仲更乘胜派军主崔孝伯渡淮进击，击破魏军茌眉戍。寿春方面，原本由薛道标领兵负责进攻，但齐高帝命齐郡太守刘怀慰以道标堂兄弟薛渊名义写书信招降他，北魏怀疑之下就改由元嘉负责寿春一线。垣崇祖以大军将至，依其计划在寿春西北立堰，并在堰北设一座有一千人驻守的小城，并在小城四周挖深沟作城防；他预计魏军到后会认为小城易取而尽力攻城以破坏堤堰，然后适时决堤让洪水淹浸魏军。480年二月，元嘉军到达寿春，大军在堰南集结，而分军在东道进攻小城，垣崇祖在傍晚下令决堰，蓄起的河水遂掩浸攻城的魏军，魏军遂大败退却。同时，居住在南齐荆、湘、雍、郢、司五州山谷的蛮族响应北魏进攻，司州蛮引领魏军进攻平昌郡，但为平昌太守苟文宾击破；南襄城蛮秦远则攻陷了潼阳县，杀害了潼阳县令；北上黄蛮文勉德则进攻汶阳郡，汶阳太守戴元宾弃城逃返江陵。萧嶷于是派中兵参军刘伾绪领兵千人讨伐，逼降了文勉德而让秦远败逃；谢天盖亦被其部曲所杀，部众降齐。另一边的的崔文仲部继续乘胜北攻，魏竹邑戍及睢陵皆被攻破。诸军不利之下，刘昶在三月以初春降雨将至为由上请退兵，魏廷遂派车骑大将军冯熙接应诸军退兵。
同年七月，南齐角城戍主举城向北魏投降，北魏遂在八月再派元嘉南赴接应，并命平南将军郎大坛、将军白吐头、元泰、封延及贺罗分别进攻朐城（今江苏连云港市东海县）、海西（今江苏灌云县附近）、连口（今江苏涟水县）、角城（今江苏淮阴县）及下蔡（今江苏凤台县）。至九月，齐汝南太守常玄真及龙骧将军胡青苟率众降魏。闰九月，齐高帝则命令李安民领兵支援各戍，李安民遂进屯泗口，分兵援救各戍。元嘉领众进攻朐山（今江苏连云港市锦屏山），朐山戍主玄元度婴城固守，在得到青冀二州刺史卢绍之所派的援军支援后击破魏军，其时建康所派经海路增援朐城的崔灵建在夜间到达，并命众人各持两把炬虚张声势，魏军遂退，受命领兵救援朐山的刘怀珍那时还未到达。
至十月，北魏又开西边战线，命冯熙与桓诞领兵进攻义阳，进攻下蔡的贺罗因垣崇祖主动撤下蔡戍至淮东，遂转攻钟离。但同时魏淮北地区却在南齐的影响下发生变乱，当地人桓标之、徐猛子等人起事在五固据险自守，并推了司马朗之为主，北魏亦派了尉元及薛虎子讨伐。
481年（齐建元三年、魏太和五年）正月，魏军攻至淮阳并围攻角城，角城军主成买据城抵抗，虽然李安民和周盘龙已领兵增援角城，但成买仍战死。孤军深入的周盘龙、周奉叔父子在淮阳成功击退魏军，及后李安民利用密林地形藏匿兵力以引诱魏军，成功将被诱追击的数千魏军引至孙溪渚后聚集众军击败魏军。至二月齐游击将军桓康在淮阳再败魏军，并进占樊谐城；垣崇祖亦乘魏军摧毁齐军弃守之下蔡戍之军事设施时渡河突袭，大破魏军。西线方面亦因司州刺史萧景先早作防备而无功而退。
此时战事转向被魏军讨伐的桓标之等数万人，当时他们亦有向南齐求援，齐高帝遂命李安民、桓康及兖州刺史周山图等人前往支援，不过各军尚未到，至九月司马朗之、桓标之等人就全部被消灭了。
结果及影响.
南齐成功抵御北魏的多场攻势，力保淮泗地区对北魏的防线不失。而齐高帝在481年击退魏军进侵后便在七月派车僧朗出使北魏通好，虽然期间车僧朗死于刘昶策划的行刺事件，但北魏仍拨不少物资为僧朗送丧。齐高帝死后，483年（齐永明元年、魏太和七年）南齐再派骁骑将军刘缵及前军将军张谟出使北魏，北魏翌年则派李彪回使，及后几年亦互通使节，两国至486年(齐永明四年、魏太和十年)止保有约五年的和平日子，虽然487年因桓诞鼓动之司雍地区的蛮族起事导致为时两年的魏齐军事冲突，但两国仍有继续通使。继位的齐武帝萧赜亦大致继续齐高帝的改革方针，继续推广节俭外亦重定宋时失效的地方长官三年易任的定制配合魏齐边境无事的时间，令政风改善，造就「永明之治」。
480年二月初次击退魏军后，齐高帝鉴于荆州一带蛮族屡叛，遂从荆、益二州分土复置巴州加强监控，但齐武帝即位后便撤除。
北魏方面虽然未能成功扩张，而其时北魏由冯太后辅政，战后和南齐通和之同时继续推行汉化措施，例如在484年（魏太和八年、齐永明二年）实行起俸禄制，开始像传统汉人官僚制度般对官员发放俸禄，增加每户租调应付俸禄开支同时亦加强罚则遏制贪腐及重整吏治，以避免官员贪腐侵凌百姓及蚕食国家租调收入。翌年（485年）再推行均田制，配合再下一年（486年）广行全国的三长制重整户籍以计租调，成功大幅增加魏廷财政收入和经济发展。
第二次.
背景.
南齐虽因检籍制度造成唐㝢之起事，最后更决定放弃重检刘宋升明以前的户籍及让因检籍而被流放淮河一带魏齐边境的人回到家乡；齐武帝自己亦有亲近吕文显、茹法亮等幸臣及有奢侈之事，但国力仍有所增长，加上屡次击退魏军来犯，故就曾在石头城建造三千辆露车意图作陆路进攻彭城之用，北伐的意愿亦很明确。可是，齐武帝在493年（齐永明十一年、魏太和十七年）去世，继位的太孙萧昭业比祖父更为奢侈，而且更贪玩淫乱，辅政的尚书令萧鸾却在孝文帝迁都后罢兵、北方军事压力减弱时著手夺取帝位，在494年（齐建武元年、魏太和十八年）先后废掉萧昭业及萧昭文两帝，自登帝位，是为齐明帝。
北魏经历过汉化国力大增，而490年（魏太和十四年、齐永明八年）冯太后去世后，北魏孝文帝得以完全亲政，而他亦继续冯太后的汉化政策，并进一步消除鲜卑风俗。为了达成其完全汉化的主张，孝文帝意图将国都自平城南迁至洛阳，遂决定以进攻南齐作为掩护。得知齐武帝有北进之意图后刘昶就屡次请求南赴戍边协助进攻南齐，孝文帝遂在淮泗地区积聚粮草以作准备，而齐武帝亦任命崔慧景为豫州刺史作防备。493年8月7日（齐永明十一年、魏太和十七年七月戊午），北魏孝文帝宣布中外戒严，宣称准备南攻，并征集魏扬、徐二州民丁为兵。同月齐武帝去世，皇太孙萧昭业登位。八月，孝武帝亲自率步骑三十万兵力离开平城南进，至10月18日（九月庚午日）到达洛阳，接著孝文帝仍作势要继续南行进攻南齐，群臣切谏出征之下孝文帝遂逼他们在迁都洛阳及进攻南齐之间作选择，众人本亦不同意迁都，但更担忧南征之事而被逼接受迁都。孝文帝迁都之计划成功，分遣诸臣准备迁都事宜后在十月便下令解严。
齐武帝去世那一年，齐雍州刺史王奂因擅杀宁蛮长史刘兴祖遭齐武帝派人收捕，更因尝试抵抗而被自己的司马黄瑶起和宁蛮长史裴叔业起兵杀害，诸子都被杀，唯有王肃及王秉逃到北魏。孝文帝巡行到邺城时和王肃会面，二人意愿相合，相谈甚欢，王肃更借机称南齐正在衰败，力劝孝文帝讨伐南齐，于是孝文帝南伐的欲望就更高了。
事前准备.
孝文帝为迁都而宣称攻伐南齐，但他亦早为进取南齐而作准备，例如他就曾任命后军将军宇文福在黄河以北地区开辟牧马区域，并每年从河西地区迁移马匹到并州，再南徙到牧马区，为的就是让他们适应当地水土以利于作为战马，数量已达十万匹。
而齐明帝萧鸾废掉萧昭业后虽未登位，但已经总掌朝政大权，更利用齐武帝监视控制诸王的典签制度大肆杀害齐高帝及齐武帝系诸王，稳固其权力。而每次废立时他亦对王敬则、陈显达高帝旧将晋升崇官以作安抚，又特意拉拢本已不信任幼主的将领崔慧景支持自己。
经过.
494年（齐建武元年、魏太和十八年）十一月，北魏边将报称齐雍州刺史曹虎派使者来降，孝文帝遂以齐明帝废君自立出兵南齐，除自领军队南进外，亦分别派遣行征南将军薛真度督四将进攻襄阳；大将军刘昶与平南将军王肃进攻义阳；徐州刺史拓跋衍攻钟离；平南将军刘藻攻南郑及安南将军卢渊督襄阳诸军攻南阳。孝文帝自洛阳出发十七日后便走到悬瓠，翌日更下令各军战时掠夺的人口都悉数放还，以收入心。攻南阳的卢渊因军粮问题请求先攻赭阳，获允许后便与魏征南大将军拓跋鸾、安南将军李佐及荆州刺史韦珍合力进攻赭阳，齐北襄城太守成公期则据守赭阳。南阳太守房伯玉及新野太守刘思忌则抗击在沙堨集结的薛真度。
南齐朝廷方面则到495年（齐建武二年、魏太和十九年）正月才作出反应，分遣镇南将军王广之、右衞将军萧坦之及尚书右仆射沈文季分督司州、徐州及豫州征讨事。另宣布中外戒严，命太尉陈显达为使持节都督西北征讨诸军事，在建康附近的新亭和白下为各军作声援。
北魏进攻部队方面，攻义阳的王肃、刘昶军在王肃指挥下屡败齐司州刺史萧诞，遂以号称二十万之众进围义阳，负责司州征讨诸军事的王广之畏敌在城外百多里不敢前进，但萧衍此时却自请进攻，乘夜带著王广之分配给他的精兵进占仅在魏军数里外的贤首山。天亮后义阳守军看见山上的齐军后认为援军已到，萧诞遂派军主动突围，萧衍此时亦配合夹攻魏军，魏军不能抵抗只能撤围，更遭萧诞追击，战败。同时齐军派往主动攻魏以分散义阳压力的部队也有斩获，先后攻陷建陵、驿马、厚丘、虎阬、冯时、即丘及纪城。
孝文帝在二月带领大军兵临寿阳，但过城不攻，登八公山后转而支援因齐徐州刺史萧惠休坚守而战况不利的拓跋衍军；同时，齐明帝再派崔慧景及宁朔将军裴叔业增援钟离。孝文帝到后仍无法攻下钟离，命人临江数说齐明帝之罪恶后改屯钟离北方淮河河中之邵阳洲，在洲中立城以外更在淮河南北各筑一城，打算置戍而还，但南北二城皆遭裴叔业击破。高闾、陆叡等北魏大臣上请退兵，崔慧景亦派人向魏军表示愿意罢战，孝文帝遂决定撤军北返。不过魏军撤走时崔慧景则派船舰试图截断魏军归路，齐军到后占领中渚阻断，但那时孝文帝已经渡过淮河，但为保住大军退路就命应募之奚康生进攻中渚齐军，成功以攻烧毁齐舰，击破齐军。接著孝文帝命前将军杨播领三千步兵及五百骑兵为部队撤退殿后，那时齐军乘春季水涨大批地乘舰船前来，杨播在淮河南岸结阵抗敌，等到南岸各军都成功撤退后杨播军已遭到齐军包围，杨播遂以圆阵防御奋力抵抗。不过守了两天后杨播已吃光军粮，围攻的齐军愈来愈多，而淮北魏军又因水涨而无法增援，形势危急之下杨播趁水位有所减退之机拥众成攻渡河。被留守邵阳洲的万多名魏兵后来请以五百匹马换取齐军让北归，崔慧景原想趁机阻断其归路并进攻他们，但因张欣泰劝阻作罢。
攻赭阳的卢渊、李佐及拓跋鸾等军互不统辖，围攻百多日仍无进展下众将都打算围而不攻待其自溃，惟李佐却执意要日夜进攻，导致其麾下死伤惨重。此时齐将垣历生受命增援赭阳，魏军众将都认为打不过，打算及早撤退，惟李佐又独断地领二千骑迎击垣历生，又战败，历生更乘胜大败卢渊等撤退中的魏军。而沙堨的薛真度也遭房伯玉等击败。
最后进攻南郑方面，仇池镇大将、梁州刺史拓跋英在孝文帝增援钟离之时自请领兵协助刘藻。齐梁州刺史萧懿派遣部将尹绍祖及梁季群等领二万兵据险立五栅防御，拓跋英认为守栅诸将地位卑微且互不统辖，只要以精兵集中进攻一个，其他四个都不会营救，且城破后他们都会望风溃退，而发展亦果如拓跋英所预计般，更生擒了梁季群，齐兵战死三千多人并有七百多人被俘。拓跋英乘胜逼近南郑，萧懿派出部队迎击，拓跋英先击灭齐将姜修部，然后又故意表现从容制造有伏兵的假象骗过赶上来的其他齐军，更在他们退后时大败齐军，于是围困南郑。南郑被围数十日后城内恐惧不安，萧懿录事参军庾域此时故意封存数十个空置的仓库谎称内里藏著足够两年食用的粮食，令城内人心安定下来。此时拓跋英收到孝文帝命其撤返的命令，于是命老弱先退，自率精兵殿后，更特别派使者向萧懿辞行；萧懿怀疑拓跋英是假意退兵，魏军撤走后两日才派兵追击，面对拓跋英的殿后部队根本不敢进逼，后拓跋英又成功击败了由萧懿鼓动来断其归路的仇池诸氐，安然回到仇池，并一并平定叛魏诸氐。
结果.
魏军此战无功而返，攻赭阳方面的拓跋鸾被降封为定襄县王，卢渊、李佐及韦珍都被削官爵为民，其中李佐更被流放瀛州，只有薛真度因其堂兄薛安都降魏让魏得宋徐州之大功而得保留其官爵。不过孝文帝撤还期间途经淮北诸城，其中经过碻磝时特意经泗水进黄河返回洛阳，以通洛阳与淮北的漕运体系。作为刘宋皇室的刘昶两度领兵进攻义阳，但因为其个人性格问题无力招集义故，对作战影响不大，而此战亦为刘昶死前最后一次参与攻齐。
南齐再次成功防御其防线，而齐明帝击退外敌后就更著力去巩固其国内地位，战后对各大小事项都想亲自处理，不论中央官署还是郡县之事务都要亲自听取及下决定，连选官也要自己决定，于是很多亲戚就趁机拉关系获得任命。萧谌助明帝废立及登位，而在废萧昭业前明帝曾许诺让萧谌担任扬州刺史，惟之后食言，令萧谌心生怨念；而萧谌亦自恃大功而干政，这正违反明帝想大权独揽的意愿，遂在战后六月诛杀了萧谌，连成功击退魏军的萧谌兄萧诞也遭牵连遇害。明帝也继续杀害高帝及武帝子孙。
第三次.
背景.
北魏孝文帝力抗反对汉化的代人势力迁都并继续实行汉化，不但将朝廷和宗庙皆搬到新都洛阳，更下令朝中禁止说鲜卑胡语及穿著胡服，改说汉语及汉服，甚至连南迁代人的籍贯也被改为「河南洛阳」，死后不得北返而须葬在洛阳；又仿效汉文化将胡姓改汉姓，并分明姓族及郡望，包括将国姓「拓跋」改为「元」，亦在洛阳设国子、太学、四门小学。496年（齐建武三年、魏太和二十年），以皇太子元恂为首的抗拒汉化者试图逃返平城，事败后孝文帝废黜了元恂，不久赐死，亦破灭了宠臣穆泰的叛乱阴谋。而孝文帝亦没有放弃进攻南齐，在第二次南伐后他回洛阳就即下令裁减冗官俸禄去拨给军国之用，又在同年八月下诏选全国武勇之士共计十五万人担任羽林、虎贲兵力；十月又下令徐兖光南青荆洛共六州戒严戎备，随时按需要集合。
经过.
497年7月21日（齐建武四年、魏太和二十一年六月壬戌），孝文帝下诏冀定瀛相济五州征召二十万兵力准备南侵，7月26日（六月丁卯）又下令分配军力决定出征和留守的部队。9月13日（八月丙辰），孝文帝下诏宣布中外戒严，至10月7日（八月庚辰）正式自洛阳出兵进攻南齐，留任城王元澄守洛阳，李彪及李冲参留台事，而以彭城王元勰中军大将军和自己一同出兵。同时，北魏南梁州刺史杨灵珍叛降南齐，并进攻魏所封武兴王杨集始，令杨集始亦降齐，孝文帝遂在10月24日（九月丁酉）命河南尹李崇讨伐他们。
李崇开辟山路，出氐军不意进袭，氐人见此便离弃了杨灵珍，先削其一半部众。不过杨灵珍还想抵抗，命堂弟杨建守龙门，自己则守鹫狭，更特意斩树封闭龙门以北的路以及在进入鹫峡的入口处准备好巨石准备用落石对付进攻的魏军。然而他们还是遭李崇派军击破，武兴遂被北魏收复。齐梁州刺史阴广宗等试图救援杨灵珍，又败予李崇，杨灵珍终败走汉中。
孝文帝对于前年第二次进攻时薛真度受阻于南阳太守房伯玉无法前进深感不满，遂将主力都于在进攻襄阳一线，作为反应，齐明帝派了直合将军胡松协助北襄城太守成公期守衞赭阳，另派军主鲍举领兵且西汝南北义阳二郡太守黄瑶起守舞阴。孝文帝在到赭阳后留下其他将领攻城，自己则领兵继续南进，并一举攻破南阳郡治所宛的外城，房伯玉只能坚守内城，孝文帝尝试招降但失败。11月3日（九月丁未），孝文帝留下元禧及元英继续攻宛，自己则继续领兵南行，两天后到达新野，但面对新野太守刘思忌坚守，孝文帝在11月13日（十月丁巳）仍无法攻克，只好筑围作围城战，并讹称房伯玉已降，但刘思忌毫不动摇。明帝在11月30日（十月甲戌）派了太子中庶子萧衍及右军司马张稷增援当地，但在12月20日（十一月甲午）就发生了前军将军韩秀方等十五将向北魏投降，三日后萧衍等更在沔北败给魏军，王伏保等将被俘。498年2月1日（齐建武四年、魏太和二十一年十二月丁丑），齐明帝再任命度支尚书崔慧景假节领二万兵及一千匹马增援雍州，并节度当地众军；其时雍州刺史曹虎则一直按兵不动，屯驻樊城。
498年2月11日（齐建武五年、魏太和二十二年正月丁亥），李佐攻陷新野，刘思忌被俘拒降而遇害。刘思忌的死动摇了齐沔北诸军的军心，不久湖阳戍主蔡道福、赭阳戍主成公期、协防赭阳的胡松、舞阴戍主黄瑶起、协防舞阴的鲍举及和南乡太守席谦都相继弃城南奔，黄瑶起及鲍举更遭魏军俘获。3月20日（二月甲子），宛城失陷，房伯玉出降。沔北诸城失陷后崔慧景才到达襄阳，于是改为助守樊城。不久崔慧景率萧衍等共五千人巡行樊城以北的邓城，突然有报告称魏军快到，不久就看见北魏数万骑兵攻来，慧景与萧衍分别据守南北门，其他诸将就登城防御，当时萧衍打算出战迎击进攻的魏军，但崔慧景认为魏军不会夜间围城，只要等到日落魏军就会退。不过随后魏军持续增援，崔慧景在没有通知众人之下自行从南门撤离，众人见此亦随之而退，魏军于是乘虚从北门入城，军主刘山阳断后奋战仍难以抵抗魏军，只能且战且退，而慧景部过闹沟时因太多人争相过桥，令桥都不堪负荷而损坏，魏军则在退路两边对齐军进行攻击，很多士兵因而堕下护城河阵亡，刘山阳到后用衣服器杖填塞河道才得以成功撤退。众军溃退到樊城，而孝文帝仍领军穷追，刘山阳据樊城拒敌，孝文帝攻到日落后就撤退了。惟此败已吓怕了众军，当晚就全部渡过沔水退回襄阳。后孝文帝又再领十万兵到樊城，曹虎闭门不战，孝文帝到沔水边望向对岸的襄阳后就撤走了。
南阳及新野二郡危困之际，齐明帝诏令徐州刺史裴叔业领兵赴雍州救援，惟叔业认为魏军不想远征而只爱抢掠，只要主动进攻北魏就可以分散其在雍州的军事压力，于是进攻虹城试图牵制魏军军势，俘了四千多人。另齐将王昙分以一万多兵力进攻北魏南青州的黄郭戍，但遭黄郭戍主崔僧渊击败，全军覆没；齐将鲁康祚及赵公政亦领兵万人进攻太仓口，却遭领三千兵力抵御的魏豫州长史傅永设伏击败，康祚战死而公政被俘。裴叔业遂进取楚王戍，傅永又在楚王戍外设伏，叔业到后见护城河已被填塞就分遣兵力筑围围城，此时魏军伏兵就突袭叔业后军，叔业于是自领数千精兵前去救援，傅永见叔业确实被引开后就开门大破城外齐军大营，叔业进退失据只好撤退。及至沔北诸城失陷后，魏豫州刺史王肃进攻义阳，叔业就攻涡阳图为义阳解围，并遣别军进攻龙亢戍。广陵王元羽领兵试图救援龙亢但被叔业击败，时涡阳守军经已粮尽要吃树皮树叶了，孝文帝又派了傅永、刘藻及假辅国将军高聪救援涡阳，反为叔业大破，高聪逃回孝文帝驻紥的悬瓠，傅永收拾败军试图再战，再败给叔业，死了万多人、三千多人被俘且损失大量军需品。王肃因孝文帝拒绝再派兵而被逼放弃进攻义阳而领兵十多万回防涡阳，叔业见王肃大军只好乘夜退走还保涡口。
此战以后两军战事暂时停顿，北魏留台的李彪及李冲因各自意见屡屡不同而多有争辩，李冲不能忍受李彪专断之下将对方囚禁起来并称其各项罪行上表弹劾他，终以孝武帝免李彪职而李冲因忿恨李彪而得病去世结束。孝武帝本亦想再次南伐，曾下令各州郡征集共二十万兵力在八月中旬送到孝文帝驻紥的悬瓠，惟先前因不欲北魏征兵而叛变的高车诸部大败了前去讨伐的宇文福，逼使孝文帝要先集中力量解决高车叛变的事，碰巧齐明帝在七月去世，孝文帝遂在九月以「礼不伐丧」为理由下诏停止对南齐的军事行动。早在498年3月1日（齐建武五年、魏太和二十二年正月乙巳）齐明帝就曾下诏让陈显达增援雍州，后更下诏命其北伐试图扭转局势，但因明帝患病，再杀害河东王萧铉等高帝武帝子孙，又因防备会稽太守王敬则而令其恐惧遭明帝逼害而起兵叛乱，虽然很快就因王敬则被杀而被平定，但不久明帝就去世了，皇太子萧宝卷继位，陈显达北伐一事就暂时停住。
至499年（齐永元元年、魏太和二十三年），陈显达督崔慧景等四万兵力北伐，进攻离襄阳三百里远的马圈城。北魏派了元英抵抗，但元英屡败给齐军，陈显达围攻马圈城四十日后北魏守军因粮尽而被逼弃守突围，虽然造成魏军上千人阵亡，但因为齐军在城破后顾著争夺城内的绢布而没有追击。接著陈显达更派兵攻下了南乡县，惟孝文帝此时抱病亲率大军抗击陈显达，在4月17日（三月丁酉）到达马圈，更派了荆州刺史元嘉阻断均口以堵齐军归路。陈显达只得领军到均水西方鹰子山筑城防御，但当时大军已无士气，魏军进攻亦很猛烈，魏武衞将军元嵩更是屡败齐军，陈显达于是被军主崔恭祖及胡松用黑布幔担架载著经分碛山小道到均水口成功撤退，其余齐军亦跟著走，但因魏军追击还是死了三万多人，丢失了大量军需品。
结果.
北魏此战成功从南齐夺得沔北土地，房伯玉此战被俘但因其在北魏的清河房氏族人为其求情而得免死，入仕北魏。王肃亦杀掉黄瑶起报父仇。不过孝文帝在击败陈显达后不久的4月26日（四月丙午）便病逝，其主导的这一连串对齐军事行动亦告结束。
南齐此战丧失沔北土地并且无法藉陈显达反击而重夺失土，陈显达在战后威望大降。事后南齐国内在萧宝卷的治下纷乱不休，萧衍在战后代替曹虎担任雍州刺史，远离建康变乱，并凭借雍州的军事力量在后来起兵成功推翻萧宝卷，及后更篡齐自立，建立南梁。南齐内乱亦令裴叔业不安下在500年（齐永元二年，魏景明元年）以寿春降魏，失沔北后不久便再失重镇。