魏军一口气逃至陉山(现新郑县西南三十里)上安营扎寨,企图凭着几堆小山丘阻挡楚军。魏王因双手被震伤,这时才感到阵阵剧痛,查点军士,方知只剩八万(马军二万、步军六万)。魏军刚全部用完饭,快马慌忙报告魏王说:“楚怀王已率大军往陉山方向追来,现已到离陉山十里的张庄一带。”魏王听完即令全军做好战斗准备。有军将对魏王说:“我军新败,军心沮散,现与楚军对战,实力相差悬殊,若是楚军到来,将陉山围住,那就危险了。”魏王说:“这个我知,等些时候韩王就会带大军前来,楚军连续作战,必定疲劳,那时和韩王大军合为一处,定可大败楚军。”半小时后,楚怀王率大军到了陉山,魏王不战,据山以对。楚怀王令大军将陉山围住,正准备安营扎寨,忽然快马来报说:“韩王率十万韩军赶来增援魏军,大军已到离这十里的唐庄了,正向陉山这边开来。”
楚怀王闻报,随令全军退后一里列阵,并对昭睢说:“魏、韩联军虽是十八万之多,但八万魏军新败,士气不振,且无大将,我军刚胜,士气正旺。因此,十五万楚军可以打败十八万魏、韩联军。”楚怀王接着说:“我军骑兵多,是个优势,可以冲击敌军步军,这样,也就更有胜算的把握。”于是,楚怀王随令昭睢率大军七万(马军三万、步军四万)迎战八万魏军,自己亲统八万楚军(四万马军、四万步军)迎战十万韩军。
楚怀王随令四万楚军步军列为四行,一万六千骑兵分四队立于步军两旁,准备攻击韩军步兵的正面两边和两个侧翼,自己率二万四千骑兵迎击二万五千韩军骑兵。而昭睢则将四万楚军步军列为四行,一万骑兵分成两队立于步军两旁,准备攻击魏军步兵的两翼;自己率二万骑兵迎击二万魏军骑兵。不一会,韩王率十万韩军(二万五千马军、七万五千步军)到来,魏王见韩王率大军前来也率全部魏军冲下山来,却被昭睢大军拦住。
楚怀王趋马上前说:“来者就是韩王吗?”韩王也趋马上前说:“正是!”楚怀王说:“楚、魏相争,与你何干?为何要与楚交恶?”韩王这时心里正在嘀咕:原以为魏军与楚军正面对决,就算是楚军胜,也应自损一半才对,没想到魏军如此狼狈。早知是这样,就不应该率军前来。因此,一时答不上话来。楚怀王见韩王不答话,大怒,双腿一夹,乌睢马如风疾奔,手挥长枪,直取韩王。韩王见状大惊,掉转马头急跑回阵,韩阵中冲出一员韩将,大叫:“休伤我王!”挥刀向楚怀王砍来。楚怀王长枪一挥,嗙的一声!韩将的大刀被打到一边。楚怀王又一枪击去,噹的一声!把韩将的大刀打落于地。韩将大惊失色,掉转马头想逃,楚怀王一枪打去,正中后背,翻身落马,当场毙命。韩阵中又有两将奔驰过来,楚怀王拍马挥枪,冲杀过去,只一回合,一名韩将手上的枪便被打飞了二丈开外,人也被打落马下,声都没哼一下就死了。另一名韩将举矛刺来,楚怀王长枪一击,韩将长矛被打落地下,楚怀王挥枪一扫,韩将的头颅被打碎,哼的一下,翻身落马,一命呜呼。
顿时,楚军吼声连天,韩王见状,斗志全无,急令大军退回新郑。楚怀王也不追击,任由韩军撤退。楚怀王见韩军撤远,随命军将率二万铁骑击杀魏军步兵。魏王见韩王率大军退去,大惊,急令全军快退。昭睢见状,令楚军将士全军出击,楚怀王的二万铁骑也从侧面冲杀过去,魏惠王见大势已去,在一万多马军的护卫下逃回了偃师,其余魏军四散逃命,少数逃脱了,大部分逃不掉,或被斩杀,或缴械投降。昭睢楚军斩杀魏军二万余,俘虏三万,获战马五千匹,盔甲兵器五万副和粮草轻重一大批。
古城、陉山之战,楚怀王从魏惠王手里夺回了古城、陉山诸地,大获全胜。共斩魏军十五万(马军三万五千、步军十一万),俘虏三万,缴获战马三万五千匹,盔甲兵器十八万副和无数粮草轻重,自损军士五万五千人(马军一万二千,步军四万三千),因得战马三万五千匹,楚军马军反而变成八万骑了。魏惠王的二十万大军,只有一万五千马军逃回偃师,其余全被消灭,从此,魏国再也没有能力与楚国正面对抗了。随后,楚怀王令楚军攻占魏国的禹州(现河南禹州市)、襄城(现河南襄城县)、鲁山(现河南鲁山县),为报复韩王出兵助魏军,又令楚军攻占韩国的汝州(现河南汝州市)、伊川(现河南伊川县)等地,并在伊川设立了新城郡,管辖伊川、汝州、禹州、襄城、鲁山诸地。