晋平公亲自率军讨伐齐国,在渡过黄河的时候,中行献子用朱丝系着两对玉璧祷告:“齐国的姜环(齐灵公)靠着地形险要、人员众多,丢弃友好、背弃盟誓,欺凌虐待百姓。陪臣彪(晋平公)将率诸侯去讨伐,他的官臣偃(中行献子)将辅佐于左右。如若得胜有功,不给神灵带来羞耻,官臣偃将不敢再渡河回国。如有违背,伏请神灵制裁!”中行献子敢这样说,是因为他相信巫皋说的话,自己已经回不去晋国了。祈祷之后,他把两对玉璧沉入河中,渡过了黄河。
十月,诸侯在鲁国的济水之滨会合,重温湨梁之盟的誓言,共同攻打齐国。齐灵公布置齐国兵马在平阴地区进行防御,在防门之地挖了壕沟防守,壕沟特别宽,有一里,也就是现在的五百米。齐灵公的亲信寺人夙沙卫进言道:“如果不能和他们正面交战,不如扼守险要之地泰山,不应在平原地带的防门挖沟防御。”齐侯任性,此时更不会听一个寺人的话。
诸侯联军很快就越过了齐军挖的壕沟,开始攻打防门城,齐军士卒死伤无数。晋卿范宣子在阵前对齐国大夫析文子说:“你我相识一场,实不相瞒,鲁国从曲阜发兵一千乘攻向临淄,莒国也从其国都发兵千乘向临淄进攻,诸侯联军三路夹击,齐国将亡。你还不早为自己打算?”析文子听后,马上把范宣子说的话禀报了齐灵公。齐灵公听说三路大军进攻齐国都城,各有兵车千乘,这七八万人的兵马,齐国只有区区两个军,根本抵挡不住,顿时感到一阵恐惧从心底袭上心头,打了个冷战。晏婴听到后,大呼不妙,心里说:”国君本来就缺乏勇气,现在又听到这样的话,活不了多久了。”
齐灵公登上巫山(齐国防门附近的孝堂山)远望晋军,看到晋军司马带领士卒排除山林河泽的险阻,即使军队到达不了的地方,也一定树起大旗稀疏地布置军阵;让兵车左边安排真人、右边放上假人,大旗作前导,兵车后面拖着木柴制造扬尘如大军奔驰。齐灵公看后感到害怕了,带着随从脱离齐国大军自己先脱逃了。
十月二十九日夜里,齐国军队得知国君已经先期撤回临淄后,也连夜撤离了战场。晋国乐师旷是盲人,耳朵很灵敏,早晨起来后对晋平公说:“乌鸦的叫声愉悦,齐军恐怕已经撤走了。”申公巫臣之子、邢邑大夫邢侯告诉中军统帅荀偃说:“夜间有马匹嘶鸣的声音,齐军恐怕逃走了。”晋国太傅羊舌肸也对平公说:“臣听到城上有乌鸦的叫声,齐军恐怕是逃走了。”
十一月初一,诸侯之师进入了平阴地区,然后迅速追击撤退的齐军。齐侯亲信寺人夙沙卫率兵士把大车联在一起,堵在山间小路之上,为齐军殿后。军中大力士殖绰、郭最对夙沙卫说:“您来为齐师殿后,是齐国的耻辱。您先撤吧,我们殿后!”春秋时期军队撤退,殿后者一般都是军中最为勇武之人,殖绰、郭最看到一个寺人殿后,深以为耻,难道齐军都不如一个寺人?夙沙卫也好面子,觉得二人看不起自己,他杀了自己的马,堵在二人后撤必经的隘道上,挡住了殖绰和郭最的退路。晋军力士州绰追了上来,用箭射中了殖绰的肩膀,殖绰左肩、右肩各中一箭,两支箭夹着脖颈。晋力士州绰在后面对他喊道:“停下别跑,你还可以被我军俘虏;不停,我就射中你的脖颈!”齐力士殖绰回头喊道:“你发誓!”州绰大喊:“太阳神鸟为证!”他追上殖绰,把弓弦拆下来从后面把他绑了起来,州绰的车右具丙也把郭最捆了起来。殖绰、郭最二人穿着铠甲,被捆绑着坐在晋国中军的战鼓下面。
晋军想要继续追击败退的齐军,鲁军和卫军则请求攻打齐国险要之地。十一月十三日,荀偃、士丐率领中军攻占了京兹。十九日,魏绛、栾盈率下军攻占了邿城。赵武、韩起率上军围攻卢城,没有打下来。大军绕过卢城继续前进,十二月二日,诸侯联军到达都城临淄外围靠近雍门(临淄西门)的秦周,砍伐了雍门外大片的上好木材楸木。公族大夫范鞅(士丐之子)率军攻打雍门,他的御者追喜用戈在门中击杀了一条狗;鲁卿孟献子的儿子孟庄子砍伐了橁(chūn)木,准备回去给鲁襄公制作颂琴。三日,诸侯联军放火烧了雍门和临淄西边、南边的外城,刘难、士庄伯(晋军将领)率军放火烧毁了申池的竹林。六日,联军又放火烧了临淄东边、北边的外城,范鞅率军猛攻扬门(临淄西北门)。晋大力士州绰率军猛攻临淄东门,他的战车左边的骖马由于拥挤,在门洞里盘旋不能前进,州绰等得焦急,连城门上的门钉都数清楚了。
齐灵公看到诸侯联军这个架势,临淄是要守不住了,赶紧登上车驾,准备逃往邮棠城。太子光与齐大夫郭荣拽住齐灵公车驾的马缰,喊道:“诸侯的兵马行军迅速、攻击猛烈,这是要掠夺财物。他们就要退兵了,国君有什么可怕的!国家之主不能轻动,轻动就会失去民众。国君一定要坚持!”齐灵公听不进去,打算驾车冲过太子光和大夫郭荣,太子光拔剑砍断了马鞅,车驾不能前行,停了下来。八日,诸侯联军攻到了临淄东面的潍水、南边到达了沂水。
跟随晋军出征的郑国军队中,除郑简公坐镇外,还有郑卿公孙趸、伯有、子张(公孙黑肱,七穆之一公子印的儿子)率领郑国军队一起征战。留守郑国的有执政正卿子孔(公子嘉)、子展(公孙舍之)和子西(公孙夏)等众公子。执政子孔想铲除异己,背叛晋国、借助楚国的力量除掉反对自己的众位大夫,他派心腹前往楚国拜见令尹子庚,子庚没有答应。楚康王听说了这件事,派楚大夫杨宜对子庚说:“楚国人认为不谷主持国家而不出兵征伐,死后就不能享受祭祀的礼仪。不谷即位已有五年,军队不出动,人们都以为不谷贪图安逸、忘记了先君的霸业。令尹以为如何?”子庚无奈,他听出了国君想要出兵的旨意,感叹道:“国君恐怕以为臣是贪图安逸享乐吧,臣这样做是为了有利于楚国啊!”于是他对杨宜稽首说:“诸侯与晋国关系和睦,臣请尝试一下,如果可行,则请国君随后跟进;如果不行,则收兵而退,楚国也没什么损害,国君也不会受到羞辱。”
令尹子庚率领楚军在楚国的颖水南岸开展演习,准备进军郑国。留守在郑国的子展(公孙舍之)和子西(公孙夏)洞悉了子孔的阴谋,加强了都城的守备,进入到城内坚守。这样一来,子孔不敢也没有机会与楚军会合。
楚军进驻于鱼陵,随后兵分三路:楚右师在右尹王子罢的率领下,在颖水之滨的郑国上棘修筑小城,作为军队进退暂歇之地,军队分批渡过颖水,驻扎在旃然河畔。第二路由楚将蒍子冯、公子格率领精锐之师攻打郑国的费滑、献于、雍梁三座城池,然后绕过梅山,进攻郑国的东北部,一直打到了虫牢城后返回。第三路左师由楚令尹子庚亲自率领主力部队攻打郑国都城新郑外城的南门(纯门),大军在城下连续猛攻了两天,没有攻破城池,就撤退了。三路楚军在鱼齿山下会合后,渡过泜(chì)水返回了楚国境内。
楚军进攻郑国的消息传到了讨伐齐国的诸侯联军中,十六岁的郑简公与随军将领子蟜、伯有、子张商议后,到晋侯军帐之中拜见,请求诸侯联军救援郑国,晋平公的乐师旷说:“国君不必担心。旷屡次歌唱北方之曲,又歌唱南方之曲,南方之曲不强,相争死亡的声音很多,楚国这次一定会无功而返。”春秋时期,人们相信可以根据乐律推测出战争的吉凶,所以师旷才这样说。师旷是中国音乐史上造诣颇深的奇人,被称为“乐圣”,传说中《阳春》、《白雪》就是他的作品。晋史官董叔说:“岁星在于西北,南方的军队不合天时,一定不会建功。”晋平公问太傅羊舌肸,羊舌肸说:“战场上的胜负决定于他们国君的德行。”
晋平公还是决定暂时撤军,让郑国兵马回国。鲁襄公十九年(公元前554年)正月,诸侯联军在齐国的祝柯城会盟,誓言“大国不能侵掠小国。”晋侯下令拘捕了邾悼公,因为邾国屡次攻打鲁国边境。会后联军驻扎于泗水岸边,划定了鲁国和邾国的边界,将漷水以西的邾田划归了鲁国。
晋平公在盟会之后先返回了晋国。鲁襄公在鲁国园林蒲圃设宴款待晋国的六卿,并仿效先君鲁成公在鞍之役后向晋国领军三卿赠送车驾和朝服的规格,向晋国六卿赠送了最高等级的车驾和朝服,又向军尉、司马、司空、舆卫、候奄等晋军将领赠送了一般等级的车驾和朝服。襄公还单独向晋国正卿兼中军统帅荀偃(中行献子)进献了吴王寿梦青铜鼎和上等锦缎五匹加玉璧、骏马四匹等价值连城的礼物,以表示特别的感谢。