青州刺史刘兴祖上书建议:“黄河以南已经非常凋敝,百姓饥馑,野外无法抢掠到粮食,如果魏军黄河以南各个城市固守不战,十天半月无法攻克。顿兵坚城之下,从后方转运粮食,是非常苦难的。抓住有利时机,要速战速决才是。如今,魏主刚死,天气炎热,内讧不已,难以派军远征。臣建议应当率领部队渡过黄河,长驱直入,占领中山(河北省定州市),守住太行山一线的险关要隘。冀州以北的百姓富足,况且小麦已经成熟,军粮问题容易解决,那里,响应祖国号召的义士一定很多。如果黄河以北受到我军的冲击,黄河以南敌人自然就会瓦解。臣请求派遣青州、冀州七千兵马,北渡黄河,直插敌人心腹地带,如果前锋进展顺利,冀州刺史张永以及黄河以南的各路军马应当同时渡过黄河,在那里设置官吏,招抚归附的百姓,西面据守太行山的关隘,北面把手军都关(北京市昌平县西),当地的魏国官吏一律留任,聚众响应的人一律封官,恩威并用,这样以来,百姓们一定会热烈欢迎我们的到来。如果能成功,则统一天下,可指日而待,即使失败,也损失不多。我已经下令部队整装待发,只等圣上的旨意。”刘兴祖的建议可谓是釜底抽薪,避实击虚。仅就战斗力而言,宋军与魏军相比并不差,如今,天气炎热,马匹瘦弱,以骑兵为主体的魏军失去了一定的野战优势,突入敌国境内,因粮于地,能收到事半功倍的效果。且,魏主拓跋焘南下,魏军死伤惨重,魏国国内民怨沸腾,拓跋焘死后,魏国境内民心摇动,刘兴祖之计不是没有成功的可能,但是,缺乏战略眼光的宋文帝却认为宋军只用打下黄河以南即可,对进攻黄河以北,他是想都不敢想,因此,拒绝了刘兴祖的请求。为了加强对前线将领的控制,他故伎重演,提前写好具体的方略,派遣亲信、员外散骑侍郎徐爰随军,代表皇帝,指挥前线将领作战。
基于占领黄河以南的考虑,宋文帝将主攻方向放在了中路和东路。
元嘉二十九年(公元452年)五月,他命令徐兖二州刺史萧思话都督冀州刺史张永等军向碻磝城进发,鲁爽、鲁秀、程天祚等率领四万荆州军队进攻许昌、洛阳,雍州刺史臧质率领雍州部队进攻潼关,左军中兵参军萧道成率领偏师进攻仇池。
东路:宋军五月从沿口(今地不详)出发,建威将军、济南平原二郡太守申坦、副将任仲仁,率领宋军先头部队进入黄河,冀州刺史张永司马崔训率领冀州部队、齐郡太守胡景世率领青州部队陆续会合。七月,萧思话率领各路宋军悉数到达碻磝,从三个方向对碻磝城发起了进攻,张永、胡景世从东面进攻,申坦、任仲仁从西面进攻,崔训从南面进攻。宋军连续进攻18天,碻磝城一直无法攻陷,到八月五日,碻磝城内的魏军从地道里秘密出城,烧毁了城南崔训军营和望楼、蛤蟆车等攻城器械。八月七日深夜,魏军再次偷偷打开了城门,摧毁城东张永所部长墙及攻城器械,不少宋军士兵被火烧死、被魏军斩杀,继而,魏军又转兵向南,摧毁了城南宋军的进攻通道。从未经历过战阵的冀州刺史张永吓得魂飞魄散,不向其他将领通报,擅自率领本部人马仓皇而逃,东面宋军撤离后,其他方向的宋军相互惊扰,一片混乱,纷纷向后方狂奔,魏军趁机出城追击,宋军是一败涂地。
在后方的萧思话率军亲自前来,以崔训望楼被烧、又不能守住进攻的通道,将其在斩杀于碻磝城下,将张永和申坦打入历城(山东省济南市)监狱,然后,他又增加兵力继续攻城,但宋军又进攻了十几天,碻磝城还掌握在魏军之手,无法攻下。此时,宋军已经断粮,八月二十一日,萧思话只得下令全线退却,率军回到了历城。(《魏书·岛夷刘裕传》称:“思话遣建武将军垣护之至梁山逆军,尚书韩茂率骑逆击之,思话退还麋沟。”《韩茂传》称:“世祖崩,刘义隆遣将檀和之寇济州,南安王余令茂讨之。至济州,和之遁走。”)
中路:八月,中路宋军进至长社(河南省长葛县),北魏守将永平公秃发幡乃同弃城而逃,宋军顺利拿下了长社。接着,宋军继续北进,进攻大索城(河南省荥阳以北)。魏军守将豫州刺史拓跋仆兰(即长孙兰,长孙肥第四子)说:“鲁爽自恃骁勇,疏于戒备,如今,我弃城,他肯定会率军前来,我在檀山设下埋伏,一定能将其活捉。”闻听魏军弃城,鲁爽果然趁夜率军北进。鲁秀劝说,但鲁爽不从,鲁秀只好率领本部随后前来。果然,天将破晓,宋军果然在檀山附近遭遇埋伏,魏军骑兵从两面发起进攻,幸赖鲁秀纵兵力战,才将魏军击退,魏军退回虎牢。宋军又占领了大索城和小索城,包围了虎牢关。鲁爽本来寄希望于东线水军在攻下碻磝城后,进入黄河西上,能够切断虎牢关魏军的水门,但此时,却得知东线宋军没有攻下碻磝,已经败退,鲁爽只好率军撤退。魏军跟踪追击,宋军边打边撤,两军转斗数百里,退至曲强(今地不详),魏军发现此时宋军已经又饥饿又疲惫,集中全部的精锐部队发起了猛攻,鲁爽亲自与敌人搏斗,终于打退了魏军,回到国内。
西路:统帅雍州刺史臧质对这次北伐并不积极,按照宋文帝的指示,西路军的目标是占领潼关。臧质集结雍州主力军队,驻扎在襄阳近郊,并没有按时出发,只派遣司马柳元景率领薛安都等将带着部分军队向北进发,北魏关城(疑为潼关)守将弃城而逃,宋军即占领了关城。柳元景进至至洪关(河南省灵宝市西南),打算与薛安都一起渡过黄河,进攻魏军蒲阪守将杜道生。九月,魏冠军将军封礼率军从浢津(河南省灵宝市东北)渡过黄河,增援弘农(河南省灵宝市);司空高平公儿乌干驻守潼关,平南将军黎公辽驻屯河内(河南省沁阳市)。这时,柳元景等人听说中路鲁爽已经撤退,他们也只好退去。至此,西路统帅臧质依然并出师,史书称,在此期间,他还“顾恋嬖妾,弃营单马还城,散用台库见钱六七百万”,被有关部门弹劾,宋文帝念及他有战功,没有追究。《魏书》称:“义隆又遣雍州刺史臧质向崤陕,梁州刺史刘秀之、辅国将军杨文德出子午。豫州刺史长孙兰遣骑破之,季之等仅以身免。臧质、柳元景、薛安都等至关并相继败走。”