江淮、江西、湖广、云南等地的蒙古军、汉军、广西峒兵、海南黎兵，由镇南王脱欢统率南下。越南学者陈重金（即陈仲金）指出忽必烈又一次对越南用兵，目的是要为之前的战败复仇。陈朝得悉元军即将来攻，亦部署境内的防御工作。该年年底，元军攻破普赖山、至灵山等地，准备直下红河，越军主将陈国峻安排上皇、仁宗撤出昇龙。在农历十二月的云屯之役（云屯位于在广宁省锦普），越方海军将领陈庆余击破元将张文虎的运粮船，使元军粮食补给困难。脱欢看到「地热水湿，粮匮兵疲」 ，便决意撤退回国。1288年（重兴四年）三月，脱欢命水军先回，但经过内傍