戰前部署
戰前周聯軍的部署為:以虢公林父指揮右軍及配屬的蔡、衛軍;周公黑肩指揮左軍及配屬的陳軍;周桓王親自指揮由周軍主力組成的中軍並為三軍統帥。
針對周聯軍的佈陣形勢和特點, 鄭莊公採納鄭大夫子元(公子突)的建議:陳軍因國內動亂而士無鬥志, 蔡、衛軍戰鬥力不強, 先攻周聯軍兩翼薄弱部分, 造成周左、右軍混亂而敗, 爾後集中兵力合擊周中軍。
鄭莊公命令大夫曼伯(公子忽)率一軍為右翼的方形軍陣, 攻周軍左翼;大夫祭足率一軍為左翼的方形軍陣, 攻周軍右翼;大夫原繁、高渠彌合率一軍為中軍,
鄭莊公又採納高渠彌的建議:改變傳統的車戰戰鬥隊形, 將通常配置於戰車之後的隸屬徒兵, 以伍(五個人)為單位, 分散配置於每乘戰車的左、右、後方, 填補車與車間的空隙, 形成徒兵與戰車相互掩護, 密切協同、攻防自如的“魚麗之陣”。
周軍潰敗
戰爭開始後, 鄭軍方面即按照既定作戰部署向周室聯軍主動發起猛烈的進攻, 鄭莊公命令中軍:“看見搖旗就擊鼓, 擊鼓之後就前進”。
鄭大夫曼伯指揮鄭右軍方陣首先攻擊周室聯軍左翼的陳軍。 陳軍一觸即潰, 逃離戰場, 周室聯軍左翼即告解體。 與此同時, 祭仲也指揮鄭軍左方陣進攻蔡、衛兩軍所在的周右翼部隊,
戰爭結果
鄭軍的指揮者見周師潰退, 十分振奮。 祝聃等人建議立即追擊, 以便擴大戰果, 但為鄭莊公所拒絕。 他的看法是“周天子地位雖已今非昔比, 但威望猶在, 不可過分冒犯, 以致引起其他諸侯國的敵視和作對。 ”
當晚鄭莊公委派祭仲前去周營慰問負傷的周桓王及其將領, 以示與王室和好之意, 並用以緩和兩國間的尖銳矛盾。
周桓王懼怕鄭國的軍隊再次襲擊, 於是拔寨返回周室。 鄭國雖然勝利, 但是鄭莊公恐得弑君之罪于列侯, 於是也不追趕周桓王。