В ходе войны, начатой Иваном III в 1500 году, под предлогом якобы защиты интересов православной веры, и православных князей, которые начали переходить на его сторону, московский князь, летом 1500 года отправил к Дорогобужу сорокатысячное войско во главе с воеводой Даниилом Щеней.
Московские основные войска прибыли первыми и расположились на западном береге реки Ведроши, в 5 вестах от Дорогобужа. Воевода Щеня расположил свои полки следующим образом: правый фланг его армии был прикрыт Днепром, а левый - густым лесом.
На восточный берег Ведроши Щеня отправил передовой полк, который и встретил 14 июля 8 - тысячное войско ВКЛ под командованием Константина Острожского. Острожский, понимая, что численность его войск намного меньше, все же принял решение дать бой.
Под натиском литвинов московский передовой полк начал отступать на восточный берег по двум наплавным мостам и вброд, выманивая войска Острожского на основные силы московской армии. Когда войска Острожского перешли на правый берег реки, Щеня дал команду всем своим полкам ударить по всему фронту. После шестичасового боя, в котором до сих пор было неясно, кто же побеждает, московский воевода приказал запасным полкам атаковать литвинов с фланга. Удар запасного полка Щени смял боевой порядок войска Острожского, а, тем временем, часть московской пехоты зашла с тыла и разрушила мосты.
Литовское войско оказалось в окружении, и вскоре, после ожесточённого и отчаянного сопротивления, было полностью разбито. Уйти удалось лишь воеводе Кишке с 4-мя ротмистрами и пару сотнями воинов, все остальные солдаты либо погибли, либо утонули в реке во время бегства, либо попали в плен. Среди пленных оказался и раненый Константин Острожский, который проведёт в заточении 6 лет, и вернётся на родину в 1507 году.
Битва на Ведроши была самой крупной в войне между ВКЛ и Московским княжеством 1500-1503 гг., по итогам которой, Литва потеряла всё Днепровское левобережье.