李庭芝不同意出兵,夏大根决定独力攻城。从稳妥角度来说,最好是等待舰队陆战团到来,但运输陆战团的船只还需十日以上才能到达,夏大根不想等。其实舰队也可以不打扬州城径直往上游而去,但这意味着兵力的进一步分散。资州号、籍县号等战舰由于受损严重,被迫停靠在北岸,如果主力舰队离开,将不得不留下重兵守护,否则扬州城元军会来抢夺和破坏战舰。夺下扬州城,还可以利用其船厂修理这些受损的战舰。再三思量之下,夏大根决定拿下扬州城。为此他抽调了二千水兵上岸,又将资州号和籍县号的重炮拆下来,运到了扬州城南门外。
夏大根亲率水兵从陆上攻打南门,舰队的十余艘轻护船则从河上对东门发动了攻击。霎时间,扬州城上硝烟弥漫火光闪烁,颇似一场烟花盛典。在资州号和籍县号的数十门重型舰炮的轰击之下,扬州南门的厚重包铁城门轰然倒塌,吊桥粗大的铁链也被打断,重重地砸落在护城河上,省却了霹雳军士兵搭建浮桥的麻烦。城门楼和城墙上的守军士兵也在猛烈的炮火中,仆倒了一地,剩下皆夺路而逃。攻打东门的轻护船只装备了轻型炮和中型炮,其威力比重炮小了不下,但架不住数量多,还有大量的水冷重机枪。火力覆盖之下,元军在东门的死伤甚至还超过南门。几轮火炮之后,扬州城的元军大部分投降了——他们在数月前还是宋军,现在投降霹雳军毫无心理压力。有二千余元军则往西边夺路而逃,他们大多是蒙古汉军,只有少数新附军。
据降兵交待,焦山惨败之后,阿术便带了蒙古骑兵往北而去,又带走了城中三千精锐。临行前他告诉守军坚守,自己去调集援军。扬州城墙高厚也不缺粮食,但焦山一战的消息已让守军胆寒,如今阿术再弃城而走,守军更加人心惶惶。畏于重炮威力,又见城门已破,守军便索性降了。在南渡之前,元军料到霹雳军舰队可能会出动,但判断其方向是在沿海地带,根本没有想到会出现在相对狭窄的内水。阿术更没有料到董文炳所率的十万水军会失败,也没有料到焦山之战败得如此之惨,如此之快。故他在扬州的城防并没有太上心,更没有构筑土木防炮工事。
真州和镇江的元军也在猛烈的舰炮火力下,弃城逃跑了。镇江城的元军往南而逃,真州城的元军则往西而逃。对此霹雳军也无可奈何,毕竟战舰不能上岸,也无兵力追击敌人。同样因为兵力原因,东海舰队也没有上岸接管城池,而是派人让城中百姓组织义军自行管理。这两城之中虽有霹雳军的暗探,但现在还不是表明身份的时候,因为元军还可能反扑进攻。按照计划,夏大根将率东海舰队继续溯水而上,在夺取建康之后,再前往鄂州和岳州,彻底歼灭元军的水师,控制建康至峡州的长江航道,以切断元军经汉水北返的道路。至于建康、扬州至出海口的航道,则由南海舰队前来接管。
此时的南海舰队官兵,在乐全安率领着忙得不亦乐乎。他们兵分三路,第一路在收缴澉浦周围堆积如山的物资和元军遗留的大批船只。董文炳身死,其麾下十万元军四处逃散,南海舰队费了九牛二虎之力,也只抓了一万余俘虏和二万民夫。第二路前去夺取舟山岛,将其作为海军作战的后勤基地和扼守江南富庶之地的前哨。流求运来的弹药和缴获物资及俘虏都将运往这里,再进行转运。第三路则是继续封锁逃到钱塘江的元军战船,并清剿临安周边五百里内海岛上的元军和海盗。