劫掠夺的盗贼行为，渐渐令人民对张昌失去信心。及后，晋军反击，陶侃等率兵进攻张昌，屡败张昌，杀了数万人，最终两军于竟陵决战；而刘乔就派李杨、尹奉率兵直捣江夏。陶侃与张昌苦战多日后终大破张昌，数以万计的人投降，张昌就逃到下儁山。永兴元年（304年），陈敏消灭了石冰，平定扬徐二州；张昌亦终遭荆州军所捕，传首京师，其余众都被诛灭三族。