魏军见数百名晋军推车登岸,不解其意,引颈观望。丁旿命每车上登士卒七人,在车辕上张设巨型盾牌,然后在阵中坚起白旄,这是车阵建好的信号,刘裕望见,又命宁朔将军朱超石率军两千携带大弩、利箭、短槊上岸,每辆战车又增二十名弩手。
魏军这才恍过神来,向晋军发动攻击。朱超石嫌魏军太远,命弩手先以软弓小箭射击,射之不远,中箭亦不死,魏军大笑,不为设备。长孙嵩接到消息,率骑三万前来助战,下令三面合围(阵后是黄河,只能围三面,但却月阵是弧形,任你三面来,我只守一面,这是却月阵的妙处之一)。
朱超石这才命令士卒改换强弓硬弩,猛射魏军,魏军死伤颇重。长孙嵩大怒,督促后军补充,踏尸而进,缩小包围圈。朱超石早有准备,箭也不用了,命士卒射短槊,用大锤锤击弩机,一射发三槊,一槊洞穿三、四名魏军。却月阵呈弧形,魏军虽多无用,仿佛排队受死,魏军从未受过如此重创,“一时奔溃,死者相积”。刘裕见魏军溃败,下令振武将军徐猗之率五千士卒登岸追击,徐猗之斩杀魏军大将阿薄干,追至越骑城,魏军援军赶到,包围徐猗之。徐猗之命令士兵用长戟结阵抵抗,与魏军展开肉搏。如此凶悍的晋军,久违了!不久朱超石率军推车赶到,再设车阵,魏军已经领略过车阵硬弩的厉害,胆气已破,前后相传,哄然而逃。
叔孙建、公孙表见此恶战,心惊胆战,滑台城内的王仲德击鼓而出,叔孙建、公孙表害怕被灭,急忙渡河而逃,刘裕也不阻击,任其渡河。刘裕在河上耀兵数日,魏军不敢接近黄河,刘裕打一巴掌揉三揉,派人给魏军主将长孙嵩送去米酒及江南点心,长孙嵩不敢食用,皆送往平城。拓跋嗣知道魏军惨败,乃命长孙嵩厚答刘裕,送上马肉羊酪之塞北食品,刘裕笑纳,命左右分为食之,以示不疑。拓跋嗣仍命魏军监视晋军行动,但长孙嵩等终怀恐惧,只是在河北摆摆样子,不敢接近黄河,刘裕遂安然西上。
却月阵之战,刘裕只动用七千七百步兵,却一举击败数万魏军,斩军杀将,迫使十余万魏军望河却步,不能不说是一则经典案例。
刘裕这里阻住魏军,王镇恶、檀道济一路进展得更加顺利,攻陷阳城、荥阳两城,与南路上来的沈林子合兵一处。后秦洛阳守将姚洸一面向长安方面求援,一面分兵扼守洛阳东部险要关隘。这些东西在王镇恶面前简直如同纸糊草扎的一般,遂斩将长驱而进,包围洛阳,姚洸见大势已去,出城投降。王镇恶并不在洛阳停留,直扑潼关。
在潼关前线,王镇恶做出部署,自己率部攻击潼关,命檀道济别攻蒲阪,又命沈林子负责殿后,保护粮道。后秦守将姚绍收集从中原溃退的后秦士兵,自己死守潼关天险。另外,姚绍知道晋军水师厉害,因此派遣别将率重兵把守蒲阪,阻水设阵,企图在关中最后一道防线上与晋军决战。