闰月,庞法起等各军进入卢氏,斩杀县令李封,任命赵难为卢氏令,让他率领部众做向导。柳元景从百丈崖(今河南卢氏南)跟随各军到卢氏。庞法起等进攻弘农,辛未日,攻克,擒获北魏弘农太守李初古拔。薛安都留驻弘农;丙戌日,庞法起进军向潼关(今陕西潼关)。
北魏国主命令各位将领分路并进:永昌王拓跋仁从洛阳奔赴寿阳,尚书长孙真奔赴马头(今安徽怀远南)(胡三省注:沈约说:马头郡是原来的淮南当涂县地,晋安帝设立马头郡,因山形得名,属南豫州,宋属徐州),楚王建奔赴钟离(今安徽凤阳东北),高凉王拓跋那从青州奔赴下邳(今江苏邳州),北魏国主从东平(今山东东平)奔赴邹山(今山东邹城东南)。
十一月辛卯日,北魏国主到达邹山(胡三省注:《宋略》说:“戊子日,到达邹山。”现在依从《后魏书》),鲁郡太守崔邪利被北魏擒获(当时宋鲁郡治所在邹山)。北魏国主看到秦始皇石刻,派人推倒它(秦始皇二十八年,登上邹峄山,立石刻颂德),用太牢(古代祭祀最高等级,牛、羊、豕三牲俱全)祭祀孔子。
楚王建从清水西进,屯驻萧城(今安徽萧县);步尼公从清水东进,屯驻留城(今江苏沛县东南)(胡三省注:魏收《地形志》记载:沛郡萧县有萧城,彭城郡的留县有留城)。武陵王刘骏派参军马文恭率军向萧城,江夏王刘义恭派军主嵇玄敬率军向留城。马文恭被北魏击败。步尼公遇到嵇玄敬,率军奔赴苞桥,想渡过清水西进;沛县百姓烧毁苞桥,夜里在林中击鼓,北魏人以为宋军大批到来,争相渡苞水(胡三省注:泡水也叫丰水,上游承接大荠陂,向东流经已氏及平乐县,又向东流经丰县故城南,又向东汇合黄水。水上旧有桥,称为苞桥,是沛县百姓烧桥,北魏兵淹死的地方。又向东流经沛县故城南),淹死的人将近一半。
宋文帝下诏任命柳元景为弘农太守。柳元景派薛安都、尹显祖先率军到陕城(今河南三门峡西)和庞法起等会合,柳元景在后面督运粮草。陕城险要坚固,各军进攻不能攻克。北魏洛州刺史张是连提(胡三省注:《宋略》作“张是连踶”,现在依从《宋书》)率领二万兵众越过崤山(今河南三门峡东南)救援陕城(从洛阳到陕城有三崤之险)。薛安都等和他在城南交战。北魏人派出突击骑兵,各军不能抵挡;薛安都发怒,脱下头盔,解下铠甲,只穿深红色的两当衫(胡三省注:前当心,后当背,称为两当衫),马也去掉具装,瞪着眼睛横握长矛,单骑冲阵,所向无敌,北魏人从两边射击都不能射中。这样多次冲击,杀死杀伤的北魏人不计其数。恰逢日暮,别将鲁元保率军从函谷关(今河南新安函谷关)到达,北魏兵才撤退。柳元景派军副柳元怙率领二千步兵骑兵救援薛安都等,夜间到达,北魏人不知道。第二天,薛安都等在城西南列阵。曾方平对薛安都说:“现在强敌在前,坚城在后,这是我们战死的日子。你如果不进,我就斩你;我如果不进,你就斩我!”薛安都说:“好,你说得对!”于是合力交战。柳元怙率军从南门击鼓呐喊直冲而出,旌旗盛大,北魏兵震惊害怕。薛安都挺身奋力攻击,流血凝固在肘部,长矛折断,换了长矛再次冲入,各军一起奋勇作战。从早晨到午后,北魏兵大败,斩杀张是连提及将卒三千多级,其余的跳进黄河和壕沟死去的很多,投降的有二千多人。第二天,柳元景到达,责备投降的人说:“你们本来是中原百姓,现在为胡虏尽力,力竭才投降,为什么?”都回答说:“胡虏驱赶百姓作战,后出战的灭族,用骑兵逼迫步兵,没开战先死,这是将军亲眼所见的。”各位将领想全部杀死他们,柳元景说:“现在王旗向北指,应当让仁爱之声先行。”全部释放遣返,他们都呼喊万岁离去。甲午日,攻克陕城。
庞法起等进攻潼关,北魏戍主娄须弃城逃走,庞法起等占据潼关。关中豪杰到处兴起,以及四周山上的羌、胡都来归附。
宋文帝因为王玄谟败退,北魏兵深入,柳元景等不应单独进军,都召回。柳元景派薛安都断后,率军返回襄阳。下诏任命柳元景为襄阳太守。
北魏永昌王拓跋仁进攻悬瓠、项城(今河南沈丘),攻克。宋文帝害怕北魏兵到寿阳,召刘康祖让他返回。癸卯日,拓跋仁率领八万骑兵在尉武(今安徽寿县西)追上刘康祖(胡三省注:《宋略》及《南平王刘铄传》都作“尉氏”。按《刘