此時左軍的信使送來戰敗的消息,信使還說晉文公應該躲在一個沒有重兵防守的地方,同時請求子玉發動進攻。子玉卻說大局已定,胥臣已經回到晉中軍附近了,楚人已經沒有任何機會贏得戰爭了。
子西稍作休整準備突圍,但是晉人沒有給他這個機會,他們行動之迅速,好像已經排演過多次似的。晉人的步兵在前,車兵在後,輔助部隊的騎兵則分布在外圍。
完成包圍之後,晉人就放火燒山,小山頓時成了一個濃煙滾滾的巨大馬蜂窩,剛得到一絲喘息機會的楚軍驚慌失措地衝下山坡。楚軍艱難地衝破晉軍的第一道防線,僥幸突圍的人又被外圍的騎兵追逐、射殺。隻有包括子西、子越在內的少數人衝出去了,大多數人隻好選擇了投降。
先軫感到敵人左軍抵抗越來越弱,就抽出部分軍隊去增援胥臣(因為他聽說下軍還在與子玉對峙)。這時太陽已經偏西,子玉看到敵人越聚越多,於是下令放火,軍隊就在大火濃煙和夜幕的掩護下撤退了。
隻進行了一天的城濮之戰就以楚軍的完敗結束了。這一戰晉文公準備了四年,而晉國三代君侯則整整準備了四十六年(從晉武公入主晉國開始)。
晉軍開進楚營,搶救和搶奪沒被大火燒掉的戰利品,他們取得了巨大收獲:來不及逃走的雜役和傷兵、眾多的牛馬,糧草和輜重全都成為戰利品。
晉軍在城濮休整了三天,盡情揮霍著楚人留下來的糧食,晉文公則忙著撫恤戰死和受傷的將士、賞賜立功者。之後他便派出使者到東周和各諸侯國宣布這一重大消息,並通知周襄王和諸侯們到踐土參加盟會。
但是晉文公仍是一副憂心忡忡的樣子。大夫們都勸他,說楚國已經戰敗,您還有什麼擔心的事?晉文公說:“可是子玉還活著啊!隻要有他在,寡人就沒法不擔心,能與晉國對抗的也隻有他了。”
子玉領著敗兵一直退到連穀城,連穀是方城山外的一座小城,具體位置已經無法考證了。子玉命令成大心和鬥椒把軍隊帶回國去,自己準備在此地自殺。
申息子弟在城濮之戰中傷亡慘重,能夠活著回去的不足七成。申縣全城縞素,人們晝夜痛哭,沒有遭遇喪事的人也停止了一切娛樂活動,整個申縣已經化為一座哀城。
楚成王此時仍在申縣,他麵對成大心和鬥椒,臉上掛著一層濃重的寒霜:“子玉呢?他在哪裏?”
成大心說:“得臣現在連穀成,他想要自殺,但是臣說:‘自殺相當於專殺,是違背君命的,您應該等待君王的命令。’所以得臣派臣來聽取君王的命令。”