Точно неизвестно, кто был инициатором войны Мамая с Москвой: традиционно считается, что Мамай собрал армию для наказания своевольного московского князя и подчинения ВКМ. Однако в этом случае он должен был действовать невероятно медленно и пренебрегать скрытностью: против него успели собрать союзное войско практически всех северо-восточных княжеств, вассальных московскому князю, и даже соперников Москвы: Суздальского, Тверского и Смоленского княжеств. По дороге на Дон к армии русских князей присоединились отряды литовских князей Андрея и Дмитрия Ольгердовичей, враждовавших с братом Ягайло и перешедших на московскую службу, а также войско из Новгорода (где наместником был также литовский князь Юрий Наримантович). Сбор союзных войск был назначен в Коломне (чуть более 100 км к югу от Москвы) на 15 августа — это означает, что переговоры о совместных действиях, за которыми последовало выдвижение союзных войск за сотни километров к пункту сбора (к примеру, отстоявшего свыше 500 км от Твери), должны было начаться многими неделями раньше, а весть о планах Мамая должна была и вовсе прийти не позже начала лета. После сбора союзное войско за три недели преодолело около 200 км на юг, переправилось через Дон на территорию «дикого поля» — «вотчину» Мамая — и только там встретилось с его армией. Мамай планировал усилить свои поредевшие силы за счет наемной пехоты из генуэзских колоний в Крыму, а также полков литовского великого князя Ягайло. Однако точно известно, что войска Ягайлы не успели к началу Куликовской битвы (в отличие от полков литовских князей, поддержавших Дмитрия), и есть основания сомневаться в том, что в сражении успели принять участие генуэзцы. Трудно объяснить, почему Мамай так плохо подготовился к вторжению за несколько месяцев и даже не успел перейти границу с русскими землями если он и вправду замышлял нападение на ВКМ. Зато понятно, почему Дмитрий повел войска не кратчайшим путем на юг навстречу предполагаемому удару из степи, а огибая с запада Рязанское княжество и требуя, чтобы и волос не упал с головы рязанца. Сомнительно, что таким образом можно было сохранить нейтралитет Рязани, которую московские войска разоряли едва ли не каждый год как накануне, так и после Куликовской битвы (а в 1376 г. еще и отобрали часть территории). Но то, что выдвижение союзного войска явно застало Мамая врасплох, не в последнюю очередь связано с тем, что оно проводилось скрытно от враждебных Москве рязанцев.
Куликовская битва была во многом решающей для русско-ордынских отношений, а ее символическое значение в качестве ключевого эпизода патриотической, а позже национально-исторической мифологии трудно переоценить. Под влиянием этого фактора историки реконструировали обстоятельства сражения в масштабах, совершенно невероятных для военного дела и демографического потенциала средневековья: численность противоборствующих армий оценивалась в сотни тысяч человек. Недавние исследования археологов и палеогеографов позволили реконструировать предполагаемое место битвы как большую лесную поляну, зажатую между оврагами: не более 800 метров по фронту и до двух километров в глубину. На этой площади могли сражаться достаточно крупные по меркам того времени силы — несколько тысяч человек с каждой стороны. Скорее всего, речь идет о конных профессиональных воинах-дружинниках. Схватка — встречный конный бой — могла продолжаться около получаса.
Позже в сентябре остатки войск Мамая встретились с войском Тохтамыша (то ли у левых притоков Днепра в районе порогов, то ли на реке Калке в Приазовье) и, не вступая в бой, перешли на его сторону и присягнули новому хану. Одержав победу над Мамаем, Тохтамыш отправил послов русским князьям, благодаря за помощь в победе над узурпатором (Мамаем) и сообщая о восстановлении в Орде законной центральной власти. Великому князю московскому напоминалось о его вассальных обязательствах перед ханом (включая возобновление выплаты дани), за что Тохтамыш по традиции обещал милость и защиту от врагов. Князья признали власть Тохтамыша, отпустили его послов «с честию и дарами» и отправили ответные посольства с дарами. Причем первым это сделал московский князь Дмитрий — его «киличеи» (такой тюркский термин упоминает летопись) отправились в Орду уже 29 октября 1380 г. «Киличеи» князей вернулись от Тохтамыша «со многою честию и пожалованием от хана», что означало окончательное установление дружественных отношений.