刘裕回到建康后,他在地主阶级中的威望进一步提高,取代东晋的时机日益成熟。公元420年,刘裕废东晋恭帝司马德文,自立为帝,国号宋。公元422年,当了三年不到的宋武帝刘裕就病死了,在短暂的废立风波之后,三子刘义隆即位,也就是后来的宋文帝。刘裕的死,打破了南北的战略平衡,他刚刚死,北魏就抓住正在回国路上的刘宋使者,开始大举进攻刘宋。双方在河南发生大战,史称“魏宋河南大战”,战争结束后,刘宋丧失了湖陆(今山东鱼台东南)、项城(今河南沈丘南)以北的土地。然须提及的是:在虎牢失守的前夕,湖陆的檀道济军、项城的刘粹军、高桥(今地不详)的沈叔狸军都不敢救援,可见此时刘宋的力量,与刘裕北伐时相比,已经差得多了。这说明,在刘裕北伐后期,王镇恶、沈田子等人的死对刘宋军队来说可谓是伤筋动骨,到文帝时,朝中算得上能打仗的也就檀道济一人,后来的到彦之、王玄谟既缺乏能力,又缺少经验,只能空谈,檀道济被杀以后,刘宋更加无人了。河南大战同时也说明,北魏已然崛起,此时的北魏已经不再是当年大败于却月阵的北魏了,更不是当初被灭国的代国了。自此,优势已经开始转向北方。不过,当时的北方除北魏外,还有北凉、西凉、西秦、胡夏、北燕五国;此外,阴山以北,还有强大的柔然部落,其中胡夏和柔然都是北魏的劲敌,所以,北魏军在攻取河南之地后就停止了进攻,以免战线拉得过长,给敌人以可乘之机。
宋文帝即位后,就开始谋划收复北魏于公元422年夺去的河南诸军事重镇。公元430年三月,乘北魏刚与北方柔然交战、黄河以南屯兵减少之机,宋文帝命到彦之率军北伐。北魏太武帝拓跋焘命北魏军主动后撤到黄河北岸,因此刘宋军的进展也比较快,当年七月就收复了河南故地。不过,到彦之在这时犯了一个致命的错误,他命刘宋军沿黄河一线大摆长蛇阵,造成兵力的分散,他还不听旧将王仲德的忠告,对魏军冬季的反击估计不足。十月,魏军果然渡河展开全面进攻,连克金墉、洛阳、虎牢。到彦之则是畏北魏军如虎,一路奔逃,逃至历城(今济南),仍恐被魏军追及,下令焚舟弃甲,步趋彭城(今江苏徐州)。十一月,宋文帝为挽回颓势,加檀道济为都督征讨诸军事,率众北上。公元434年正月,檀道济等自清水往救滑台,至寿张(今山东东平西南),击败魏安平公乙旃眷,转战至高梁亭(今东平县境),斩魏济州刺史悉烦库结。二月,檀道济等进至济上,20余日间与魏军交战30次,多获胜利。至历城,因粮秣遭北魏军焚烧而乏食,不能前进。最终檀道济军粮尽退兵。
这次北伐以刘宋的完全失败告终,而其时北魏尚是两面作战(其西线正在进行消灭胡夏的战争),犹得取胜,可见南北方的力量差距。此后北魏忙于北方的统一战争,并于公元439年统一了北方,南方经过多年的休养生息,国力也得到了恢复,但此时南朝愈弱的局面已经是不争的事实了,因为北魏已经更加强大了。
不过此时的刘宋也处于自身的鼎盛之时,南北都有攻灭对方,统一中国的意图,于是双方不可避免地进行了一次大战,史称“元嘉之战”。
公元450年二月,北魏率先发难,以十万之众攻宋之悬瓠(今河南汝阳),同时给宋文帝写了一封侮辱信,此事成为元嘉之战的序幕。七月,经过一番庞大的人力物力准备之后,宋文帝派两路大军北伐。西路军由名将柳元景率领,进展神速,很快就打到刘裕当年占领的关中地区;东路军的主帅则是空谈军事的王玄谟,王玄谟多次拒绝部下正确的建议,围攻小城滑台不下,错过了战机,让敌人得到喘息的机会,最后北魏援军抵达,东路军被迫撤退。由于主力东路军受挫,西路也只好撤军,这场大规模的北伐至此功败垂成。北伐既败,魏军的南侵攻势却愈发锐利起来。于是魏军随之南下,一直打到长江北岸的瓜步(今江苏六合),声言要攻下建康。宋朝大惊,急调各地军民沿江六百里布防,北魏军见无隙可乘,就开始在两淮地区大肆屠杀,刘宋“元嘉之治”的成果遭到巨大破坏,刘宋的经济基础受到很大的削弱。次年正月,北魏军因苦于粮草不济,疫病流行而被迫撤军。