盟鲁定宋
郑庄公三十三年(前711年)春季,鲁桓公即位,与郑国修好。郑庄公请求重新祭祀周公,完成与鲁国交换祊田的事,鲁桓公答应了。三月,郑庄公与鲁桓公在垂邑(在今山东曹县北的句阳店或今山东鄄城县东南十五里),增加璧玉作为交换许田的代价。四月二日,郑庄公与鲁桓公在越邑(当在今山东曹县附近)结盟,以巩固交换祊田的友好。冬季,郑庄公到鲁国拜谢结盟。
郑庄公三十四年(前710年)三月,为了平服宋国内乱,郑庄公与陈桓公、齐僖公、鲁桓公相会于稷邑(当在今河南商丘市)。七月,由于对楚国开始产生畏惧,郑庄公与蔡桓公相会于邓邑。
繻葛拒周
郑庄公三十七年(前707年)夏季,周桓王不让郑庄公参与周朝政,郑庄公便不再朝觐周桓王。秋季,周桓王率领周军及陈国、蔡国、虢国、卫国四国军队讨伐郑国。当时,四国军队的部署为:以虢公林父指挥右军及配属的蔡、卫军;周公黑肩指挥左军及配属的陈军;周桓王亲自指挥由周军主力组成的中军。
为了自救,郑国的子元建议用左方阵来抵御蔡国军队、卫国军队,用右方阵来抵御陈国军队,他说:“陈国正逢内乱,人民没有战斗的勇气,如果先进攻他们,他们一定会败逃。周天子的军队见到陈国军队败逃,一定会发生混乱。蔡国、卫国的军队支持不住,定然会争先逃奔。接下来集中兵力对付周天子的军队,就可以取得胜利了。”郑庄公接受了他的建议,让曼伯率领右方阵的军队,祭仲率领左方阵的军队,原繁、高渠弥率领中军跟随庄公,摆设鱼丽阵,即将战车布列在前面而将步卒疏散配置于战车两侧及后方,从而形成步车协同配合、攻防灵活自如的整体。
双方在繻葛(当在今河南长葛市东北二十里)展开战斗时,郑庄公命令左右二方阵说:“大旗挥动便击鼓进攻。”战斗开始一段时间后,蔡国、卫国、陈国的军队开始败逃,周天子的军队因此也混乱,郑国的军队便从两边会拢进攻周军,周军大败。祝聃发箭射中周桓王的肩膀,但周军败而不乱。祝聃请求追击周军,郑庄公说:“君子不希望过分地占人上风,更何况敢侵侮天子呢!如果能挽救自己,使国家免于灭亡,这就足够了。”于是没有追击。晚上,郑庄公派遣祭足慰问周桓王,同时问候天子的群臣。
溘然而逝
郑庄公三十八年(前706年)夏季,北戎攻打齐国,齐僖公派人到郑国求救兵,郑庄公让公子忽领兵援救,于六月大败戎军,擒获戎军两个主帅大良、少良,斩了戎军三百人的头颅,献给齐国。次年(前705年)秋季,郑庄公联合齐僖公、卫宣公攻打盟邑、向邑。
当初,北戎攻打齐国,诸侯援救齐国时,郑国的公子忽有功劳,齐僖公赠送诸侯食物,让鲁国确定赠送的先后次序,鲁国根据周室封爵的次序而把郑国排在后面。郑庄公四十二年(前702年)冬季,郑国人因为齐僖公赠送诸侯食物时鲁国把郑国排在后面而发怒,于是请求齐国出兵攻打鲁国,齐僖公率领卫国军队帮助郑国,与鲁国于郎邑(当在山东曲阜市附近)交战。
郑庄公四十三年(前701年)正月,郑庄公与齐僖公、卫宣公、宋庄公在恶曹(似在今河南延津县东南)结盟。五月七日,郑庄公去世,享年五十七岁。之后,祭仲立太子忽为国君,史称“郑昭公”。七月,安葬郑庄公。