朱元璋和张士诚疆土相连接。张士诚多次派兵攻打常州、江阴、建德、长兴、诸全,总是失利而返。朱元璋派遣邵荣攻打湖州,胡大海攻打绍兴,常遇春攻打杭州,也都不能攻克。廖永安被士诚俘获,谢再兴叛变投降张士诚,适逢朱元璋和陈友谅相持不下,没有功夫顾及。陈友谅也派使者约张士诚夹攻朱元璋,但张士诚想守住疆土以观变化,口头上答应使者,最终没有行动。朱元璋平定武昌后,大军转回,就命令徐达等人谋划夺取淮东,攻克了泰州、通州,围困高邮。张士诚派水军船只沿长江逆流而上前来救援,朱元璋亲自率军击退他们。徐达等人于是攻克高邮,夺取淮安,完全平定淮北地区。接着下讨伐文书到平江,历数张士诚八条罪状。徐达、常遇春统领军队从太湖直奔湖州,吴地人在毗山迎战,又在七里桥交战,都被打败,于是包围湖州。张士诚派遣朱暹、五太子等人率六万部众前来救援,驻扎在旧馆,修筑五座营寨自守。徐达、常遇春修筑十座营垒以拦阻他们,断绝了他们的运粮道路。张士诚知道事情紧迫,亲自督促军队来交战,在皂林被打败。他的部将徐志坚在东迁被打败,潘元绍在乌镇被打败,升山水上陆路的营寨全被攻破,旧馆的救援断绝,五太子、朱暹、吕珍都投降了。所谓五太子,是张士诚的养子,短小精悍,传说能在平地上跳起一丈多高,又擅长潜水。吕珍、朱暹都是善于作战的老将,到这时全部投降。徐达等人送他们到湖州城下示众。湖州守将李伯升等人献城投降,嘉兴、松江也相继投降。潘原明也献杭州向李文忠投降。
元至正二十六年(1366年)十一月,朱元璋大军进攻平江,修筑长长的围子包围平江城。张士诚拒守了几个月。朱元璋致信招降他,说:“古代的豪杰,以畏惧天命顺从民意为贤,以保全自己保住家族为智,汉朝的窦融、宋朝的钱俶就是这样的。你应该三思,不要自取灭亡,为天下人耻笑。”张士诚不回复,几次突围决战,都不顺利。李伯升知道张士诚非常窘迫,派遣和张士诚亲善的门客越过城游说张士诚,说:“当初您所依靠的,就是湖州、嘉兴、杭州啊!现在都丧失了。孤零零地守着这座城,恐怕变故要从内部发生,那时您即使想死,也不能够啊!不如顺应天命,派遣使者去金陵,表达您能够归从大义拯救百姓的心意,打开城门,脱掉帽子,用绢一束,等候命令,就还不会失去万户侯的爵位。何况您的地盘,就譬如赌博的人,赢得人家的东西而又失去了它,对您有什么损害?”张士诚仰头观看很久,说:“我要思考思考。”就辞去门客,但终究没有投降。张士诚本来有勇胜军称作“十条龙”的,都勇猛善战,常穿银铠甲绸缎衣出入于战阵之中,到这时也都战败,淹死在万里桥下。最后,丞相张士信被火炮击中而死,城里喧扰不安,不再有坚守的意志。元至正二十七年(1367年)九月,城被攻破,张士诚收聚残余的部众,在万寿寺东街作战,部众四散逃走。士诚慌慌张张地回到王府宅第,闭门上吊自杀。他原来的部将赵世雄解救了他。大将军徐达几次派遣李伯升、潘元绍等人向他传达朱元璋的旨意,张士诚闭眼不回答。用轿子把他抬出城门,上了船,他从此不再吃东西。到达金陵,终于上吊自杀身亡,这时他四十七岁。朱元璋下令准备棺材埋葬他。
当张士诚被围困的时候,对他的妻子刘氏说:“我失败了将要死了,你们怎么办?”刘氏回答说:“你不要担心,我一定不辜负你。”把柴火堆积在齐云楼下。城被攻破后,刘氏驱赶群妾登上齐云楼,叫养子张辰保放火烧楼,自己也上吊自杀。有两个年幼的儿子隐藏在民间,不知道下落。
有个莫天祐,元朝末年聚众保卫无锡,张士诚招降他,不听从。张士诚派兵攻打无锡,也不能攻克。张士诚接受元朝的官爵后,莫天祐才投降。张士诚屡次上奏章推荐他任同佥枢密院事。到了平江被围困后,其他城池都被攻下,唯有莫天祐坚守无锡。张士诚被消灭,胡廷瑞加紧攻打无锡,莫天祐才投降。朱元璋认为他杀伤将士太多,便杀了他。
李伯升在张士诚处当官,一直当到了司徒,投降后,命他继续任原官,又进封为中书平章同知詹事府事。他曾经领兵讨伐平定湖广慈利蛮人,又任征南右副将军,和吴良一起讨伐靖州蛮人。后来因为牵入胡(惟庸)党案获罪而死。潘元(原)明是以平章的官衔,守杭州时候投降的,降后仍旧任行省平章,与李伯升都每年享受俸禄750石,不管事。云南平定,朝廷任潘元(原)明代理布政司事,死在任上。
张士诚从起事到灭亡,共十四年。