20日晚,华东野战军发起全线攻击。第1纵队一举攻占莱芜西郊、北郊的矿山、小洼等要点,并在21、22日连续打退了优势国民党军在飞机掩护下的猛烈反击,这就为后续各纵队赶赴战场赢得了时间。野战军首长赞誉该部:“在整个战役中起了决定作用”,立了“第一功”。(粟裕在华东野战军高干会议上对莱芜战役的总结讲话,1947年3月8日)与此同时,第10纵队攻占莱芜西北的锦阳关;第9纵队控制了莱芜东北的和庄、青石关地区;第6纵队在攻击莱北交通咽喉吐丝口时,遭到了守军第12军新编第36师的顽强抵抗。经3昼夜激战,虽然占领了该镇大部地区,但残敌仍负隅顽抗。于是,以主力继续围攻该师残部,以1个师在镇南构成对莱芜之敌北撤的阻击阵地。至此,莱芜地区国民党军的北撤道路被完全切断。

华东野战军原拟对驻莱芜的第73军与驻颜庄的整编第46师采取分割包围、各个歼灭。但是,未及完成部署,整编第46师即于22日撤入莱芜城。于是,华东野战军再次调整部署:以第1、第7纵队和正由南线北开的第2纵队组成西突击兵团,以第4、第8纵队组成东突击兵团。如李仙洲集团固守莱芜,则于23日晚对其发起总攻;如该部向北突围,则将其夹击聚歼于莱芜以北地区。

龟缩莱芜城内的国民党军,在华东野战军重兵包围下十分恐慌。李仙洲几次召集高级将领研究对策,有的主张固守待援,有的主张冒险突围。在突围的时间与方式上,也各持己见,莫衷一是。最后,第2绥区司令官王耀武考虑到李仙洲集团据守孤城,易于被歼。突围北撤,既能接应、救援吐丝口守军,又有利于巩固胶济线与淄博矿区以至济南的防务,遂对李仙洲下达了突围命令。

23日晨,李仙洲集团集结城北,以第73军为左纵队,整编第46师为右纵队,准备并行突围。但在临出发前,整编第46师师长韩练成“失踪”,更增加了突围指挥的混乱。

原来,韩练成早在抗日战争期间就与共产党建立了联系。莱芜战役开始前,华东野战军即派敌工干部去该部工作。按照野战军首长的意图,韩练成在整个战役期间,对李仙洲采取了敷衍、拖延的消极态度。在突围的关键时刻,韩在解放军敌工人员引导下,托故躲入城内,放弃指挥。

当莱芜国民党军开始突围时,华东野战军采取了“围三阙一”的战法,诱使国民党军放胆北进。待其后尾脱离城北矿山最后一个据点,立即以第4纵队一部占领莱芜城,断敌退路。李仙洲集团所以采取2个军4个师齐头并进的队形,原指望缩短纵深,加强突击力量,以一鼓作气迅速突出重围。但是,人多路少,人员、马匹、辎重、车辆拥挤在狭窄的道路上,根本无法保持正常的行军队形,反而影响了兵力、火力的展开。

10时许,其先头部队进抵芹村、高家洼一线,即遭华东野战军第6纵队的迎头阻击。隐伏在两侧山区的东西两突击兵团同时进行向心突击,迅速将敌军割裂成数段。国民党空军副总司令王叔铭亲自带队,指挥数十架飞机组成的庞大机群掩护突围。但在敌我交错的混战状态,也无能为力。

战至17时,李仙洲集团大部被歼于莱芜、吐丝口间东西约三四公里,南北仅一二公里的狭窄地域内。第73军军长韩浚率千余人钻隙突围至吐丝口,会同据守该镇的新编第36师残部向博山方向逃窜,也被解放军预先部署的阻击部队第9纵队歼灭于青石关地区。

王耀武在得悉李仙洲集团被歼后,为确保济南、潍县、青岛诸要点,迅速收拢胶济沿线各部队。华东野战军就势收复胶济铁路西段及其两侧的县城13座,控制铁路200余公里。这样,就使鲁中、胶东、渤海各解放区重新连成一片,巩固了华东的后方基地。