Ольгерд и на этот раз действовал так же, а потому о его походе в Москве узнали слишком поздно, и Дмитрий Иванович, не ожидавший так скоро ответного удара, не был к нему подготовлен. Он немедленно разослал по своим городам грамоты с повелением спешно собирать войска, но к нужному сроку с этой задачей успели справиться, кроме Москвы, лишь Коломна и Дмитров. Составленный из этих ополчений сторожевой полк, под начальством воевод Дмитрия Минина и Акинфа Шубы был выслан навстречу неприятелю, а сам Дмитрий вместе с митрополитом Алексеем и князем Владимиром Серпуховским за этим слабым заслоном стал поспешно готовиться к обороне Москвы.
Ольгерд между тем приближался быстрыми переходами, захватывая по пути слабо укрепленные местечки и города. Но и они защищались упорно, стараясь дать Дмитрию Ивановичу возможность выиграть время. Жестокое сопротивление оказал врагу князь Семен Дмитриевич Стародубский, с небольшими силами укрепившийся в Хохле; не менее стойко оборонялся и город Оболенск, при защите которого пал славной смертью князь Константин Юрьевич Оболенский.
Встреча главных сил Ольгерда с московским сторожевым полком произошла 21 ноября у реки Тростны. Москвичи сражались мужественно, но полк был разбит, и литовско-тверское войско подступило к Москве.
По решению боярской думы князь Дмитрий повелел сжечь московский посад и ближайшие села, чтобы лишить осаждающих укрытия, а все окрестные жители нашли убежище в новом каменном кремле, помогая его обороне. Попытавшись взять город приступом и встретив жестокий отпор, Ольгерд понял, что для овладения Москвой потребовались бы долгие месяцы осады, а к ней между тем со всех сторон шли подкрепления. И потому, к большому неудовольствию своего союзника, князя Михайлы Тверского, простояв под стенами города трое суток, он ушел обратно в Литву, грабя и разоряя по пути все, что возможно, а жителей угоняя в плен.
Следующий год был для Ольгерда трудным: ему пришлось отбивать на западе тевтонских рыцарей, вторгнувшихся в Литву и захвативших город Ковно, а затем — усмирять Смоленского князя Святослава Ивановича, который, воспользовавшись затруднительным положением Ольгерда, сделал попытку восстановить свою независимость. Все это позволило Москве собраться с силами и даже перейти в наступление.
Весною 1370 года князь Владимир Андреевич Серпуховский отбил у Литвы город Ржев, а Дмитрий Иванович двинулся с войском в черниговские земли и захватил там ряд городов, в том числе и Брянск, который, впрочем, быстро оставил, обязав князя Дмитрия Ольгердовича ни в каких походах против Москвы не участвовать.
Осенью того же года московское войско вторгнулось в пределы Тверского княжества, о чем боярин Вельяминов снова успел предупредить князя Михайлу Александровича, который тотчас поехал к Ольгерду просить помощи. Но москвичи на Тверь не пошли, а захватив Микулин и несколько других городов Тверской земли, основательно их ограбили и увели большой полон. Слухи о том, что приближается Ольгерд с огромным войском, заставили Дмитрия Ивановича отвести свою рать к Москве.
Ольгерд и в самом деле собрал на этот раз небывалые силы. Помимо его собственного войска и тверичей, в походе участвовали литовские князья Кейстут и Витовт, смоленский князь Святослав Иванович и много других подвластных Литве князей со своими ополчениями. Но теперь о приближении неприятеля к Москве узнали вовремя и успели подготовиться ко встрече.
Первое большое сражение произошло у Волока Ламского, куда Ольгерд подошел 26 ноября. Три дня тут шла упорная битва, в которой пал главный московский воевода, князь Василий Иванович Березуйский, но все же Ольгерду взять города не удалось. Не желая тратить время на долгую осаду, он оставил Волок и двинулся прямо к Москве. Ее обложили со всех сторон и безуспешно осаждали одиннадцать дней: все приступы были отбиты Дмитрием, который лично руководил обороной.
Обстановка снова складывалась скверно для Ольгерда. Было очевидно, что Москву можно взять только измором, а к ней между тем отовсюду спешила подмога: из Переяславля-Залесского с крупными силами двигался князь Владимир Серпуховский; из Пронска выступил со своею ратью князь Владимир Ярославич, в Нижнем Новгороде заканчивал сбор большого войска митрополит Алексей. Все это заставило Ольгерда вступить с Дмитрием в переговоры. Он предложил Москве «вечный мир», но великий князь на это ответил:
— Коли ищешь со мною вечного мира, допрежь вороти все поятые тобою русские земли. А доколе не воротишь, миру тебе от нас все одно не будет!
Таким образом, было заключено лишь перемирие, и Ольгерд отвел свое войско в Литву, на этот раз тоже ограбив и опустошив все окрестности Москвы. Летописцы отмечают, что этими двумя походами литовцы принесли Руси столько зла и разорения, «аще лишь от татар бывало».
Отчаявшись одолеть Дмитрия при помощи Литвы, князь Михайла решил действовать через Орду и попытаться добыть ярлык на великое княжение над Русью.