В августе 1382 года хан Тохтамыш захватил Москву, а осенью ханский посол, после удаления из Москвы митрополита Киприана, выдал великокняжеский ярлык Дмитрию Ивановичу, взяв его сына Василия заложником в Орду. В 1386 году православные помогли 14-летнему княжичу бежать из Орды к господарю Молдавского княжества Петру Мушате («Того же году княз Василей, великого князя сын Дмитриеев прибеже из Орды в Подольскую землю в великие волохы к Петру Воеводе…»). Летом 1387 года митрополит Киприан, по дороге из Константинополя, взял Василия с собой и привез его в Литву. Киприан убедил Витовта возглавить антипольскую коалицию и обручил дочь Витовта Софью с Василием Дмитриевичем. 19 мая 1389 года Дмитрий Иванович умер, Василий стал великим князем Московским. 6 марта 1390 года Киприан прибыл в Москву и 9 января 1391 года обвенчал Василия Дмитриевича с Софьей Витовтовной.
После смерти Дмитрия Донского в 1389 году Василий получил из Орды право на московский стол. Чтобы обезопасить себя внутри Руси, Василию пришлось договариваться с наиболее опасными конкурентами: с дядей — Владимиром Андреевичем Храбрым о подчинении последнего в обмен на земельные уступки и братом Юрием Дмитриевичем, получившим от отца Звенигород, Галич, Рузу и Вятку. Василий продолжил инициативу Дмитрия Донского по правовым взаимоотношениям великого князя с уделами, утверждая главную роль великого князя, но оставляя за подчинёнными князьями частичное коллективное владение в московской земле.
В решении политических вопросов молодому князю оказывало помощь московское боярство и митрополит Киприан, который способствовал женитьбе Василия на дочери литовского князя Витовта — Софье в 1391 году.
Уже в 1392 году Василий совершил первое приобретение, выкупая в Орде право на Нижний Новгород, до этого принадлежавший городецкому князю Борису Константиновичу, а самого князя отправил на принудительное поселение в Суздале, разлучив с семьёй. Кроме того им были куплены права на Городец, Мещеру, Тарусу и Муром. Этим он создал прецедент перекупки владения при существующих наследниках. До этого ярлыки выдавались только вымороченные земли.
Для предотвращения опасности со стороны Золотой Орды Василий I вступил в союз с Литвой (1392) и не противодействовал утверждению литовского влияния в Смоленске в 1395 году.
В 1395 году войско Тамерлана во время успешной военной кампании против Тохтамыша направилось в пределы Руси, но развернулось у города Ельца. Василий прекратил выплату дани Орде. Тохтамыш обратился за помощью к Витовту, обещая сделать его правителем всей Руси и Новгорода. Орден также готов был признать Витовта правителем всей Литвы, Руси и Новгорода в обмен на уступку Ордену Пскова.
В 1399 году Витовт выступил против Едигея — ставленника Тимура в Орде, но потерпел сокрушительное поражение в битве на реке Ворскле, в которой погибли герои Куликовской битвы Дмитрий Михайлович Боброк-Волынский, Андрей и Дмитрий Ольгердовичи. В том же году князь Рязанский Олег Иванович, отец жены одного из смоленских князей Юрия Святославича, организовал захват Смоленска (ставленник Витовта и участник Куликовской битвы князь Роман Михайлович Брянский был убит). После смерти Олега в Смоленске утвердился его зять Юрий. После смерти польской королевы Ядвиги (1399), жены Ягайло Ольгердовича, без наследников, литовские феодалы, ослабленные поражением на Ворскле, пошли на династический брак Ягайла с другой внучкой Казимира Великого и новый союз с Польшей, результатом которого стал захват в 1403—1404 Вязьмы и Смоленска, а также победа при Грюнвальде (1410).
В 1407—1408 годах Иван Владимирович, князь Пронский, с помощью Едигея захватил Рязань, затем разбил рязанского князя Фёдора Ольговича, получившего помощь от своего шурина Василия, но по мирному соглашению Фёдор вернулся на рязанское княжение.
Усиление польского влияния в Литве вызвало сопротивление литовско-русских феодалов, во главе которых встал Свидригайло Ольгердович. В 1408 году он ушёл на службу к Василию и получил от него ряд городов в кормление. В том же году брат Василия Константин Дмитриевич сменил литовского князя Лугвения Ольгердовича на новгородском княжении. Ягайло и Витовт выступили против Василия, войска встретились по две стороны реки Угры, но битвы не произошло. Одновременно Едигей совершил набег на южнорусские владения Литвы.
Осенью 1408 года Едигей сам двинулся на Москву. Взять столицу ордынцам не удалось, но они разорили многие города Московского княжества, в том числе находившиеся в кормлении у Свидригайла Ольгердовича (Переяславль-Залесский, Юрьев-Польский, Ростов, Дмитров). Во время осады Москвы Едигей послал в Тверь великому князю Ивану Михайловичу требование «быть на Москву» с артиллерией, но тот не подчинился. Василий не вывел войска на битву против Едигея, но предпринял ряд дипломатических усилий для возобновления борьбы за власть в самой Орде, в тылу у Едигея, как это сделал внук Василия Иван III во время знаменитого стояния на Угре, положившего конец ордынскому игу 72 года спустя.
Свидригайло, по сообщению летописца, «от тех Едигеевых татар утомился зело», в результате чего вернулся к Витовту. После нашествия Едигея Василий возобновил выплату дани Орде.
Казалось бы, что брак с дочерью литовского князя Витовта в 1391 году обеспечит Василию Дмитриевичу помощь в решении проблем с Новгородом, однако у Витовта были свои проблемы и цели. Во первых он ещё не был Великим князем, а находился на территории Тевтонского ордена (с 1389 по 1392 годы), противостоя своему конкуренту Ягайло. И только в 1392 году Витовт стал Великим князем Литовским. Во вторых, как серьёзный политик, Витовт был склонен использовать родственные связи в своих политических интересах.
Это заметно из первых же действий литовского князя. Не успев решить военные проблемы с крестоносцами, сорокапятилетний Витовт в 1395 году обещает своему 24-летнему зятю военную помощь против Тамерлана, но в сентябре захватывает Смоленск, используя склоку в Смоленском княжеском доме. Василий безропотно принимает это сообщение, а через полгода едет на встречу к тестю как раз, в захваченный Смоленск, где обсуждает пограничные и религиозные дела.
Такая позиция Великого московского князя сложно объяснима, учитывая, что он, продолжая политику отца, стремился к единению русских княжеств. В то же время известно, что рязанский князь Олег, поддерживая смоленского князя Юрия, ответил походом в Литву, а Витовт, в свою очередь, атаковал Рязанскую землю. Когда же Олег Иванович Рязанский ходил во второй раз на Литву, то Василий Дмитриевич даже упрекнул рязанского князя за это, указывая на мир между Литвой и Русью. Фактически это означало, что Василий согласен с переходом Смоленска в подчинение Литве.
В 1397 году Витовт вновь, ответно напал на Рязанское княжество, а Василий I пропустил Витовта обратно без возражений и даже встретился с ним в Коломне. По летописным сообщениям политические цели Витовта по отношению к зятю представляются коварными.
Далее ухудшение родственных отношений быстро нарастает.
Через год, в 1403 году, только восстановившись после поражения на Ворскле, Витовт захватил Вязьму, а в 1404 году, в отсутствие смоленского князя Юрия, атаковал и захватил Смоленск, после чего город надолго отошёл под руку Литвы.
Заслуживает внимания фрагмент переписки между Василием I и Витовтом, по поводу смоленского князя, упоминаемой в Тверской летописи за 1404 год. Витовт пишет:
На что Василий I ответил Витовту вполне лояльно, что подтверждает существование некой договорённости:
Когда же Витовт, в том же 1405 году совершил поход на Псков и захватил Коложе, Василий I стал собирать войско против него, призвав под свои знамёна тверичей и татар.
Весной 1406 года, войска родственников-противников встретились на реке Плаве под Тулой, но всё завершилось перемирием до будущего года. Это перемирие, заключённое без ведома тверичей, вызвало обиду тверского князя, который на следующий год отказался поддержать Василия I.
В 1408 году Витовт захватывает Одоев, а Василий в ответ, атакует литовские владения, захватив крепость Дмитровец которая охраняла дорогу на Вязьму у реки Угры. Русское и литовское войско сошлись на реке Угре, где почти полмесяца простояли друг против друга, после чего было заключён «вечный» мир. Это был своевременный шаг Василия Дмитриевича, так как в этом же году произошло нападение на русские земли войск Едигея.
В дальнейшем, до самой смерти Василия Дмитриевича в летописях нет сведений о его конфликтах с Витовтом.
Таким образом, отрицательные итоги политики Василия I в литовском направлении следующие:
Положительные моменты таковы:
При Василии I продолжало расти феодальное землевладение. С усилением власти великого князя происходили изъятие из ведения феодалов части судебных дел и передача их в руки великокняжеских наместников и волостелей.
В 1392 Василий I присоединил Нижегородское и Муромское княжества, в 1397—1398 — Бежецкий Верх, Вологду, Устюг и земли коми. Предпринял две неудачные попытки отобрать силой у Новгорода Двинскую землю.
В 1416 году Василий утвердил дружеские отношения с пронским князем Иваном Владимировичем, женив своего сына Ивана на его дочери.
Благодаря предусмотрительной политике за 36 лет правления Василия I московское княжество не ощутило каких-либо внутренних потрясений. За этот период времени Москва лишь единожды, в 1408 году подверглась нашествию сил Орды, но Едигей так и не смог взять город.
В Рождество 1390 года, в Коломне, женился на литовской княжне Софье, дочери Великого князя Литовского Витовта. На рыцарском турнире, состоявшемся на свадьбе, участвовал князь Остей, внук Ольгерда. В московских властных кругах Софью Витовтовну, вероятно, недолюбливали, считая «литвинкой». Предположительно не всё было гладко и в их супружеских отношениях. Посол Империи Сигизмунд Герберштейн, посещавщий Москву сто лет спустя, отмечал, что «… Василий Дмитриевич оставил единственного сына Василия, но не любил его, так как подозревал в прелюбодеянии жену свою Анастасию (Софью Витовтовну), от которой тот родился …»
Родившийся весной 1395 года первый сын Юрий (1395—1400) прожил всего пять лет. Второй сын, Иван, (1396—1417) скончался по дороге из Коломны в Москву в результате «мора», спустя всего полгода после женитьбы на дочери князя Пронского и получения в удел Нижнего Новгорода. Аналогичная ранняя кончина ожидала и сыновей Даниила (1400—1401) и Семёна. В 1393 году родилась первая дочь — Анна, ставшая женой византийского императора Иоанна VIII Палеолога. Вторая дочь, Анастасия Васильевна в 1417 году вышла замуж за князя Киевского Олелько (Александра) Владимировича. Третья — Василиса Васильевна первым браком за суздальским князем Александром Ивановичем, вторым за суздальским князем Александром Даниловичем. Четвёртая дочь — Мария Васильевна с 1418 года замужем за Юрием Патрикеевичем, князем Стародубским.
10 марта 1415 года родился Василий, опекуном которого в десятилетнем возрасте после смерти великого князя стал его дед по материнской линии, Великий князь Литовский Витовт.
В 1395—1405 годах в Москве работал Феофан Грек, который имел свою мастерскую и выполнял церковные и светские заказы, например писал фрески терема великого князя Василия Дмитриевича и дворца князя Владимира Андреевича Храброго (двоюродного брата Дмитрия Донского), а также расписал три кремлевских храма: церковь Рождества Богородицы (1395), Архангельский (1399), Благовещенский (1405) соборы.
При Василии Дмитриевиче в Московском Кремле построены Благовещенский собор (от первоначальной постройки сохранился подклет) и Церковь Рождества Богородицы на Сенях (первоначальный храм сохранился до уровня хор).
В начале XV века в Москве были созданы Евангелие Федора Кошки (вероятно предназначавшееся для Благовещенского собора Кремля) и Евангелие Успенского собора Московского Кремля.