德率军沿长江流下，三月廿六日，抵达扬州，沿运河入淮河西上。刘虎已经率舟师击退了涡河口的蒙古军，数天后，吕文德到达，继续西进。四月十四日，到达洛口（今安徽淮南东北），被蒙古军所阻。相持到五月初三，淮河水位上升，宋军舟师可以前进，连败蒙古军，到达寿春附近。五月初九，与蒙古军水陆交战。蒙古军为阻挡宋朝援军，在淮河上架设浮桥，两岸筑了土坝，安放弩炮。宋军奋战，吕文德和部将夏贵定计，派先锋军夜击蒙古围城军，一部兵袭蒙古营寨。夏贵一鼓作气，平定蒙古军营，打通补给线，令护送米粮的宋军登岸撒米前进，一直到寿春城下，造成米粮