8 июня 1480 года из Москвы отправилось передовое войско во главе с сыном великого князя Иваном Ивановичем. Русские стали создавать оборонительную линию по Оке. 23 июля в поход к Коломне выступили и основные силы во главе с Иваном III.
Однако беда, как известно, не приходит одна. Одновременно с нашествием Ахмата активизировался Орден. Магистру Бернду фон дер Борху удалось собрать стотысячное войско и двинуться на Русский Север. Был осажден Изборск, затем Псков. Русские города подверглись бомбардировке, но пятидневная осада Пскова не принесла результатов. Магистр отступил, но это не означало конца войны. Псковичи было обратились за помощью к братьям Ивана III Андрею и Борису, которые в то время начали фактически открытую войну с Москвой, но потом не приняли их условий. В ответ братья разорили Псковскую землю и взяли с нее большой выкуп.
Между тем русское войско стояло на Оке уже несколько месяцев, изредка наблюдая на противоположном берегу реки ордынские разъезды. Увидев, что русские прочно держат оборону, Ахмат решил обойти их с фланга и двинулся к впадению в Оку реки Угры (Угра находилась на границе Руси и Литвы). Здесь Ахмат мог попытаться прорвать оборону русских, отсюда можно было ожидать и подхода войск Казимира. В этой обстановке часть русского войска начала передислокацию к Угре, а Иван выехал в Москву, где состоялся его совет с боярами и духовенством. Было принято решение ни в коем случае не уступать Ахмату и призвать на помощь братьев Ивана — мятежных князей Андрей и Бориса. Последнее удалось, так как братья видели бесперспективность своего положения: гражданскую войну им разжечь не удалось.
Нахождение Ахмата у Угры создавало непосредственную угрозу столице. Перейдя реку, хан мог очень быстро достичь московских стен. По приказу Ивана были эвакуированы некоторые русские городки, стоявшие на возможном дальнейшем пути хана. Сожгли и эвакуировали Каширу. Окрестное население стекалось в Москву, пряталось за крепостными стенами. Государева казна и семья Ивана были отправлены в Белоозеро. Мать Ивана старая Мария Ярославна (инокиня Марфа) наотрез отказалась покинуть столицу и осталась в Москве. Оборона города была поручена боярину князю Ивану Юрьевичу Патрикееву (потомок Гедимина). Было принято беспрецедентное решение об эвакуации всего московского посада, который предполагалось сжечь, а жителей перевести в Кремль. Конечно, это вызвало роптание москвичей, но до мятежа, слава Богу, дело не дошло. 3 октября, закончив все приготовления, Иван выехал из города. На рассвете 6 октября стоявшие у Угры русские войска увидели приближающуюся Орду. Сам Иван с основными силами подошел два дня спустя. Ахмат попытался перейти реку, но встретил мощное сопротивление русского войска, впервые в нашей истории применившего пищали. Артиллерийский огонь заставил ордынскую конницу остановиться. Четыре дня продолжались бои. Наконец 11 октября к Угре подошло войско великого князя, и хан отступил, перейдя к обороне. Началось знаменитое «стояние». За это время постоянно происходили перестрелки и локальные попытки ордынцев то тут, то там перейти реку. Стояние затянулось, от польского короля Ахмат так и не получил подкрепления, вот-вот на помощь Ивану должны были подойти отряды Андрея и Бориса Васильевичей. Стремясь выиграть время, Иван отправил к Ахмату посольство во главе с Иваном Фёдоровичем Товарковым-Пушкиным. Переговоры результатов не дали.
Наступил ноябрь и вместе с ним ранняя зима. Угра и Ока стали покрываться льдом. В этих условиях, когда ордынцы могли быстро переправиться по льду через реки, Иван приказал основным своим силам отступить к Боровску, пытаясь занять более выгодную в стратегическом отношении позицию. На Угре были оставлены лишь сторожевые отряды. Напряженное ожидание затянулось. И вдруг случилось необъяснимое: 9 ноября 1480 года войска Ахмата стали поворачиваться и уходить в степь. Отступление огромного войска сопровождалось разорением нескольких русских волостей и захватом полона. Конные полки братьев Ивана двинулись в погоню за ханом, при их приближении ордынцы бежали. 28 ноября Иван III с войском вступил в Москву. «И возрадовшиеся все людие радостию велиею зело». На устах у всех было одно слово: «Победа!»
12 ноября 1480 года, воскресенье, было последним днем ордынского ига на Руси, то есть последним днем эпохи русской истории, начатой в декабре 1237 года походом Батыя на Русь, и первым днем истории новой, возрожденной России. 243 года длился этот кошмар, и наконец тучи рассеялись, ордынская власть над Русью пала. Современники, вероятно, еще не понимали значения того, что совершилось на Угре, и лишь позже пришло осознание случившегося. Рассказы о падении ига обрастали легендами, самая известная из которых повествовала об эпизоде, когда Иван III в гневе разорвал ханскую грамоту, что послужило формальным поводом к войне. Как бы то ни было, личное участие великого князя в этих событиях было чрезвычайно велико и сыграло большую роль в успехе всего дела.
Отошедший на зимовку в степь хан Ахмат был в январе 1481 года убит внезапно напавшим на него тюменским ханом. Войско Ахмата, лишенное вождя, распалось, и Большая Орда вскоре перестала существовать как государство. С тех пор слава Ордынской империи безвозвратно ушла в прошлое. На ее обломках остались мелкие государства, сила которых была несопоставима с былым могуществом Орды. В 1486 году в Москву прибежал один из сыновей казанского хана Ибрагима, Мохаммед-Эмин, враждовавший с братом, Али-ханом. Мохаммед признал себя вассалом Ивана III и просил у него помощи в войне с братом. 11 апреля 1487 года русские войска под предводительством князя Даниила Дмитриевича Холмского выступили в поход на Казань. В мае началась ее осада, Али-хан пытался сопротивляться, но силы были неравными. 9 июня русские войска впервые вошли в Казань, Али-хан сдался в плен, ханом стал Мохаммед-Эмин. Таким образом, Казань стала вассальным государством Руси. Это была крупная политическая и военная победа.
Вслед за Казанью в 1489 году был совершен поход на Вятку, сохранявшую политическую независимость. Хлынов был осажден, но вятчане предпочли сдаться. Вятка стала частью единого Русского государства.
Непросто складывались отношения Ивана III со своими младшими братьями. Особенно выделялся среди них Андрей Васильевич Большой, князь угличский, который, в отличие от Юрия Васильевича и Андрея Васильевича Меньшого, считал себя полноправным правителем отдельного княжества и полагал возможным проводить свою собственную политику. За Андреем Большим увлекся и Борис Васильевич, князь волоцкий. Эти братья великого князя встали в оппозицию к Москве. Первой ласточкой конфликта была смерть бездетного Юрия Васильевича, князя дмитровского, и отказ Ивана III разделить его владения. Но ссору удалось потушить стараниями матери — Марии Ярославны. Она вообще очень нежно относилась к Андрею Большому, сыну, родившемуся в дни тяжелого заточения. Заступничество Марии Ярославны оберегало строптивого князя и позже. Иван не решался перечить матери. В 1480 году Андрей Большой и Борис подняли мятеж, обратившись за помощью к королю Казимиру, который в завещании Василия II был назван опекуном его сыновей. Братья попытались начать широкомасштабную смуту, но вмешательство матери и надвигавшаяся гроза Ахматова вторжения спасли положение. Иван примирился с князьями, и на Угре их полки уже стояли рядом с московским войском. Со смертью Марии Ярославны в 1485 году у Ивана III оказались «развязаны руки», и он лишь ждал случая, чтобы приструнить непокорных братьев.
В мае 1491 года Иван получил известие о том, что сыновья Ахмата начали войну с крымским ханом Менгли-Гиреем и приближаются к его владениям. Верный союзническому долгу, великий князь собрал рать и направил ее на помощь хану. При этом Иван приказал и братьям прислать войска. Борис подчинился, а Андрей не послал свои отряды. Хотя до боя дело не дошло и «царевичи» отступили, Иван III запомнил своеволие Андрея. 19 сентября 1491 года угличский князь прибыл по приглашению Ивана в Москву, а затем был схвачен и посажен в тюрьму. В ноябре 1493 года он скончался в темнице от голода; его сыновья провели в заключении и в монастыре остаток своих дней. Таким образом, Угличский удел был ликвидирован.