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