Никоновская летопись сообщает, что инициатива заключения мира исходила от удельных смутьянов: «Приидоша на Москву послы братии его княже Андреевы и княже Борисовы о миру, князь же великий Иван Васильевич по печялованию отца своего митрополита Геронтиа и матери своей великиа княгини иноки Марфы… и послов их отпустил, а самим велел пойти себе вборзе». То есть Иван III снизошел до их просьб и приказал срочно идти на помощь против Ахмата. В Шумиловском списке Никоновской летописи заинтересованность Бориса и Андрея в мире обозначена еще более ярко: митрополит, архиепископ, вдовствующая государыня уже не ходатайствуют, «печалуются», «молиша великого князя о братии его». Великий князь через мать сообщает провинившимся о своем прощении.
Вторая версия представляется более вероятной. Условия заключенных после перемирия «докончаний» с братьями не отличаются принципиально от тех предложений, которые им прежде передавал великий князь. Андрей вместо Калуги и Алексина получил Можайск, а Борису досталось несколько сел в боровском уезде. Та же Софийская вторая летопись рассказывает о предыдущем посольстве братьев (очевидно, в июле 1480 года), когда, несмотря на печалования матери, государь «отмолви им и не приять челобитья их».
Новое вторжение ливонцев в августе хотя и осложняло положение Москвы, но не представляло для нее непосредственной угрозы. Ни Иван III, ни псковичи в «братской» помощи не нуждались; Андрей и Борис по своей инициативе прибыли в Псков и предложили горожанам свои услуги в обмен на убежище для их семей, но псковичи отказались отступиться от великого князя и в итоге своими силами отбили нападение. Войско князей присоединилось к русским силам, противостоящим ордынцам на реке Угре, в конце октября. К этому времени главные сражения этой войны были уже позади.
К 8 июня основные силы под командованием Ивана Молодого и князя Андрея Меньшого, брата Ивана III, который в отличие от угличского тезки всегда оставался верен сюзерену, сосредоточились в Серпухове и Тарусе. Берег Оки, или просто «берег», был традиционной линией обороны от нападений степняков вплоть до царствования Бориса Годунова, пока уже в XVII веке не появились засечные полосы в лесостепной зоне. Ахмат между тем не спешил, в первую очередь рассчитывая вступить в боевые действия, соединившись с литовцами.
Узнав о приближении ордынцев к Дону, Иван III 23 июня прибыл в Коломну, где пребывал до Покрова — 1 октября. К этому времени стало ясно, что Ахмат идет к литовской границе на соединение с Казимиром и что основные события кампании будут разворачиваться на западном участке линии обороны. Великий князь отдал приказ войску стать на приграничной реке Угре в окрестностях Калуги, а сам после кратковременного пребывания в Москве обосновался в Кременце, городке в 50 верстах севернее угорской переправы.
Противники выбирали позицию, исходя из ожидаемого вмешательства Казимира. Ахмад занял берег Угры, по которому проходила дорога на Вязьму, принадлежавшую литовцам, а ставка Ивана III располагалась неподалеку от границы, препятствуя возможному рейду литовцев в тыл основных сил, одновременно закрывая московское направление с запада. Но хан так и не дождался короля и был вынужден самостоятельно начать боевые действия. Сражение на Угре началось 8 октября и продолжалось четыре дня. Его итоги больше удовлетворили москвичей, которые отбили все попытки противника переправиться через реку и закрепиться на противоположном берегу.
С 20 октября резерв русских войск был подкреплен сильными отрядами князей Бориса Волоцкого и Андрея Углицкого. 26 октября на реках начался ледостав. (Удивительно, но ранняя студеная зима всегда сопровождает нас в лихую годину — так было в 1480, в 1812, в 1941-м). Оборонять позиции на Угре более не имело смысла, и Иван III приказал отвести войско к Боровску. Но Ахмат не только не стал преследовать русских, но и 6 ноября повернул назад в степь, осознав бесперспективность дальнейшей борьбы. Сыграл свою роль и стремительно надвигавшиеся холода, «быша бо тогда мрази велия».