围困从五年春天一直持续到六年春天,期间莱人进行过几次大规模出击,但是齐军依仗有利地形粉碎了敌人的进攻。齐人仍然不急于攻城,只是不断挖土扩大高台的的占地面积,使它们逐渐向城墙接近。
鲁襄公六年三月,莱国城内粮食即将告罄,莱人即将感受到当年宋国人被楚军围困的苦难滋味。
莱人决定做最后一博,正舆子秘密逃出都城,历尽艰辛来到棠地(今山东平度东南),并在那里武装起一支军队。
三月十五日,正舆子把军队带到敌人防线以外,并进攻齐军包围圈的薄弱之处。王湫则率领城内的军队向外突围。齐军的防线拉的过长,因此两支莱军很快就会和了。
晏弱立即把分散在四处的齐军召集过来,在莱人通过壕沟之时截住了大部分敌军,把他们重新推回城里去。少数幸运的人则得以逃出重围。
晏弱得知城内的情况,立即没日没夜地填土筑台,最后终于使土台与城墙连为一体。三月二十七日,齐军对莱人发动致命一击。精神饱满、斗志昂扬的齐国军士涌上高台冲上敌国城墙,莱人此时已经饿得连武器都握不住了。防守者终于扔下武器,向齐国人投降。
齐国人在城里也没遇到太大的抵抗,士兵们冲进公宫,却找不见莱侯和卿士大夫们。后来人们才知道,莱人已经挖了一条通往防线外面的地道,贵族老爷们在齐军发动攻势前已经通过地道秘密逃走了。
齐师占领莱国后修整了两日。这时有斥候报告说莱侯已经逃到棠地去了,晏弱命陈无宇处理残局,自己立即率领主力经过急行军包围棠邑。陈无宇留下一部分军队驻守莱城,又将宫宝器洗劫一空,把它们尽数先给齐灵公。做完这些事情后,他马上赶来与晏弱会和。
王湫和正舆子想要逃到南方去,但是两人在途径莒国时被莒人扣留了。莒国一直是齐国的小兄弟,莒子高高兴兴地把两个人的首级砍下来送到齐国去了。
棠是莱国第二大城市,城大而雄伟、城墙坚固、人口众多、给养丰富、易守难攻。莱人拒绝投降,决意与敌军血战到底。此时齐师的情绪出现了骚动,因为军士们出征已经一整年了,他们满以为攻陷莱国就可以胜利回师,结果又被拖到棠邑,进行下一场不知道什么时候才能结束的战争。
晏弱于是把指挥权交给陈无宇,赶回临淄去见齐灵公。齐灵公得知情况后也十分担心,他害怕发生哗变,便又集结起一支军队。晏弱领着新军开赴棠邑,把在外已久的齐师撤回齐国。
齐人仍然采用围困战术,但是棠人比都城之人更没有耐心,他们出城与敌人打了几仗,结果不但铩羽而归,而且消耗了宝贵的有生力量。
十二月十日,齐国人攻占了弹尽粮绝的棠邑,抵抗者们放下武器,莱侯不知所终,莱国灭亡。后一年春天,齐灵公把莱人迁到他处,又把从齐国征发了一批民众,使他们迁居到棠。齐国人又绘制了新增土地的地图,并其中一些赏赐给有功之臣。