Получив складную грамоту, Александр, всячески желая отклонить войну, объявил, что он каждому своему подданному дает полную свободу в вере и намерен отправить новых послов в Москву. Иоанн позволил им приехать, но между тем уже брал города в Литве. Московские войска были разделены на две рати: одной начальствовал знакомый нам Магмет-Аминь, вместо которого сидел в это время в Казани Абдыл-Летиф, причем в действительности именем Магмет-Аминя действовал и управлял всем воевода Яков Захарьевич из знаменитого рода бояр Кошкиных-Кобылиных; рать эта шла на Серпейск, Мценск, Брянск, Путивль, беря по дороге города, которые в большинстве случаев добровольно ей передавались; с радостью также передались ей князья Трубчевские, или Трубецкие, потомки Ольгерда. Усиленный их дружиною, воевода Яков Захарьевич занял без кровопролития всю Литовскую Русь от нынешней Калужской и Тульской губернии до Киевской. Другая московская рать под начальством родного брата Якова Захарьевича, боярина Юрия Захарьевича Кошкина, вступила в Смоленскую область и заняла Дорогобуж.
Не имея опытных полководцев среди латинян-литовцев, Александр решил вверить свои войска православному русскому князю, потомку Даниила Романовича Галицкого, Константину Острожскому, чрезвычайно искусному воину. Вступив в начальствование вооруженными силами Александра со званием гетмана Литовского, он двинулся к Смоленску.
В это время Иоанн прислал к Дорогобужу и тверскую рать под начальством князя Даниила Щени, причем велел ему начальствовать над большим полком, а Юрию Захарьевичу Кошкину – над сторожевым. Юрий Захарьевич обиделся и написал в Москву, что ему нельзя быть ниже князя Даниила в сторожевом полку: «То мне стеречь князя Данила!» Эта обида весьма замечательна: она прямо указывает на уже существовавшее среди бояр местничество, развившееся впоследствии до весьма значительных размеров, о чем нами своевременно будет подробно рассказано. Узнав об обиде Юрия Захарьевича, великий князь велел ответить ему: «Гораздо ли так делаешь? Говоришь, что тебе непригоже стеречь князя Данила: ты будешь стеречь не его, а меня и моего дела; каковы воеводы в большом полку, таковы и в сторожевом, так не позор это для тебя». После этого Юрий Захарьевич успокоился.
Между тем Константин Острожский со своими литовцами смело наступал через болотистые и лесистые места на наши войска, расположенные у речки Ведроши на Митьковом поле. 14 июля 1500 года, в славную годовщину Шелонской битвы, передний московский полк, теснимый литовцами, стал отступать за Ведрошь, чтобы заманить противника на другой берег реки. Этим началось сражение. Долго успех его колебался между той и другой стороной, так как у противников были приблизительно равные силы, по 80 тысяч человек, бившихся с большим одушевлением. Но опытные в ратном деле воеводы Иоанна искусно расположили тайную засаду, которая внезапным ударом смяла неприятеля. Тогда литовцы стали искать спасения в бегстве; однако наша пехота успела зайти им в тыл и подрубила мосты. Началось страшное побоище: 8 тысяч неприятелей пало на месте и множество утонуло в реке; князь Константин Острожский, смоленский наместник Станислав, князья Друцкие, Мосальские и огромное количество панов и простых воинов было взято в плен; весь обоз и огнестрельные снаряды также достались русским.
Великий князь Иоанн получил известие о победе в Москве. Радость его и всего стольного города была неописуема; он тотчас же послал спросить о здоровье своих главных воевод, что почиталось великою честью. Пленных разослали по разным городам, а князя Константина Острожского отправили в оковах в Вологду, где за ним крепко смотрели, но отлично содержали. Скоро государь предложил ему перейти в русскую службу; Константин присягнул Иоан ну и получил чин воеводы вместе с большими поместьями, но, как увидим, через несколько лет изменил и был затем злейшим нашим врагом.
Вслед за известием о Ведрошской победе Иоанн получил донесение и о других блистательных успехах русского оружия: войска новгородские, псковские и великолукские под начальством племянников великокняжеских Ивана и Феодора Борисовичей взяли Торопец; всеми делами в этом отряде, подобно Якову Захарьевичу Кошкину у Магмет-Аминя, ведал опытный боярин Андрей Челяднин. Вместе с тем новые подданные московские, князья Семен Можайский и Василий Рыльский-Шемятич, с боярами, князем Ростовским и Семеном Воронцовым наголову разбили литовцев под Мстиславлем, положив 7 тысяч на месте. Этим закончились решительные действия Москвы против Литвы; один из младших сыновей великого князя, Димитрий Иоаннович, был послан под Смоленск, но не мог им овладеть, а ограничился взятием Орши и опустошением литовских областей.
Война тем не менее продолжалась еще четыре года, в течение которых шли переговоры о мире, начатые Александром; вместе с тем Москве приходилось вести действия и против ливонцев, которых успел поднять на нее тот же Александр.