夏,四月,刘裕派白直队主(侍卫队长)丁旿率武士七百人、战车一百乘,在北岸登陆,离水一百余步,构筑新月阵,以河岸为月弦,新月两端,在河岸和战车掩护下,再设置七位武士,布置完毕,中间竖起一白色羽毛大旗。北魏军不解其意,只是观察,没有采取行动。刘裕先命宁朔将军朱超石进入战备状态,白色大旗一举,朱超石率二千人飞奔而至,带着大弩百张,每辆战车上增加二十人,车辕上架起防箭木板。北魏军见晋军营阵已经完成,于是进兵包围。长孙嵩率骑兵三万人为后继,四面肉搏攻营,晋军大弩也不能抵挡。当时朱超石另外还带了大锤及槊一千余支,于是截断长槊,只留三四尺长,以铁锤敲打,使它更加锋利,一槊就洞穿三四人。北魏兵不能抵挡,一时奔溃,死者相积;临阵斩了阿薄干,北魏军退还畔城。朱超石率宁朔将军胡藩、宁远将军刘荣祖追击,再次击破北魏军,杀获千计。北魏主拓跋嗣接到战报,后悔没听崔浩的话。
后秦鲁公姚绍派长史姚洽、宁朔将军安鸾、护军姚墨蠡、河东太守唐小方率众二千人屯驻河北郡九原山,依靠黄河险要,想要断绝檀道济粮道。沈林子邀击,击破后秦军,斩姚洽、姚黑蠡、唐小方,几乎一网打尽这支后秦部队。沈林子于是禀报太尉刘裕说:“姚绍气盖关中,如今兵败于外,国危于内。恐怕他的性命已经到头,我们没机会砍他首级了。”姚绍听闻姚洽等战败阵亡,愤恚,发病呕血,把军权移交给东平公姚赞,旋即去世。姚赞接替姚绍之后,军力仍然强盛,引兵袭击沈林子,沈林子再次将他击破。