В будущем Ягайло и Витовт не всегда ладили; не всегда легко давались им компромиссы, но в конечном итоге было достигнуто равновесие интересов обоих государей и их держав, а Великое княжество получило сильного правителя. Витовт и Ягайло сумели отбросить все, что, казалось, их разделило навсегда (смерть Кейстута, по всей вероятности, задушенного сторонниками Ягайло; существует версия, что и мать Витовта Бирута, бывшая языческая жрица, была утоплена по обвинению в колдовстве; в междоусобицах погибли многие братья Витовта и Ягайло). Вместо яростного врага и соперника Ягайло получил союзника — не всегда надежного, но все-таки более ценного, чем прежние правители, не способные подавить попытки удельных князей урвать у Литвы те или иные земли. Союз Литвы и Польши был фактически союзом двух равноправных монархов, и Великое княжество в неприкосновенности сохранило собственную государственность, суверенитет, лишь постепенно усваивая некоторые польские государственные институты и юридические нормы, приемлемые для местного населения (прежде всего боярства). Союз Витовта и Ягайло стал залогом победы над Тевтонским орденом, и 14 июля 1410 г. под Грюнвальдом соединенными силами поляков, литовцев и русинов был уничтожен цвет орденского рыцарства.
Сын Кейстута, названный историками Великим, в конечном итоге следовал не дорогой своего отца, а путем, намеченным его дядей Ольгердом. Поддерживая выступления против крестоносцев в Жмуди, Витовт все же направил свои основные усилия на восток. Как и его предшественники, он пользовался ослаблением Орды, неурядицами в Северо-Восточной Руси для расширения сферы своего влияния. Устранив соперников, в том числе и некоторых Ольгердовичей (отобрав в 1393 г. Витебск у Свидригайло, Новгород-Северский — у Корибута, Подолию — у князя Федора, Киев — у князя Владимира) и утвердив свою власть на всей территории княжества, Витовт заключил союз с Тохтамышем, поддержав его в столкновении с другой группировкой золотоордынских феодалов, выступавших на стороне среднеазиатского владыки Тимура. Поражение Тохтамыша в битве с войсками Тимура в 1395 г. и его бегство в Литву создало благоприятные условия для вмешательства Витовта непосредственно в ордынские дела. Как повествует летопись, Витовт говорил: «Посадим во Орде на царствие его царя Тохтамыша... и то все будет наше, и царь наш, и мы не толико Литовскую землю и Польскую владети... но и всеми великими княжени рускими».
Татарские обещания были ненадежны, но все-таки союз с Тохтамыпрм сулил возможность не только расширения владении Великого княжества на юге, но и лидерство в Северо-Восточной Руси, все еще формально подвластной Орде. Уже в первые годы правления Витовт сумел присоединить к своим владениям еще одно крупное княжество — Смоленское. Как уже говорилось, Смоленская земля попала в орбиту влияния Литвы еще при Ольгерде. Попытка князя Святослава Ивановича в союзе с Андреем Ольгердовичем Полоцким отстоять свою независимость закончилась разгромом смоленских войск, напавших в 1386 г. на Мстиславское княжество, и гибелью самого князя. Его старший сын, Юрий Святославич, был отстранен от престола, трон был передан Витовтом младшему — Глебу, превратившемуся в вассала Литвы. Вскоре, однако, Витовт предпочел установить прямой контроль над этой важной пограничной землей. Собрав в 1395 г. войска, он распустил слух о походе против татар. Подойдя к Смоленску, Витовт вызвал к себе Глеба Святославича, его родственников и бояр, задержал их, отослал князей «во свою землю Литовскую», а в княжество назначил своих наместников — князя Ямонта и боярина Василия Борейковича. Через несколько лет наместником стал князь Роман Брянский. Впрочем, младшие ветви местной династии (например, князья Вяземские) сохранили свои уделы. Захват Смоленщины был признан другими княжествами Северо-Восточной Руси (хотя князь Юрий Святославич нашел убежище у рязанского князя Олега, своего тестя). Именно там, в Смоленске, вскоре встретился с Витовтом великий князь Василий Дмитриевич, «кланяючися ему яко тестеви». По словам одной из поздних летописей («Хроники литовской и жмойтской»), свидание было дружеским; Витовт встретил зятя в миле от Смоленска; обнявшись, они «плакали в радости»; в городе был устроен торжественный прием; «там же примирье межи собою и панством своим подтвердили и против Тимиртиклую (Тимур-Кутлука.— С. Д.), цару татарскому, сполне (вместе.— С. Д.) воевати постановили». Согласно московским летописям, это событие произошло в апреле 1396 г.
Таким образом, вскоре после присоединения Смоленска между Москвой и Вильно, видимо, было достигнуто какое-то соглашение о совместных действиях, т. е. два основных центра антиордынской борьбы готовились объединить свои усилия. Тем временем завершился успехом первый самостоятельный поход Витовта против западных улусов. В 1397 г., по словам хроники Длугоша, он «перешел Дон... и в окрестностях Волги разгромил кочевье татар, именуемое Орда, и много тысяч татар с женами, детьми и стадами скота взял в плен и привел в Литву» (это событие положило начало поселению в Литве татар, пожалованных землями с обязанностью служить великому князю). В 1399 г. был подготовлен новый поход, для которого Витовт собрал все наличные силы. Даже Тевтонский орден, обязанный бороться с язычниками, послал великому князю небольшой отряд рыцарей. В числе участников похода был и знаменитый воевода Дмитрий Боброк-Волынский, по всей вероятности, присланный московским князем. 12 августа 1399 г. после недельного стояния на реке Ворскле войско Витовта, оставив укрепленный лагерь, переправилось через реку и заставило отступить отряды эмира Эдигея. Но тем временем воины Тимур-Кутлука обошли поле битвы, разгромили войска Тохтамыша, окружили армию Витовта и почти полностью ее уничтожили. На Ворскле погибли многие князья, в том числе герой Куликовской битвы — Боброк-Волынский, Андрей Полоцкий, Дмитрий Брянский, многие другие Гедиминовичи и Рюриковичи (среди них и бывший смоленский князь Глеб). Витовту удалось бежать «в малой дружине... коней переменяючи».
Поражение на Ворскле заставило Витовта на время — но только на время — отказаться от честолюбивых планов, вновь искать тесного сотрудничества с Ягайло. В 1401 г. он заключил соглашение об унии с Польшей (все еще, впрочем, имевшее скорее символическое, чем реальное, значение). Он сумел свести к минимуму политические последствия поражения, энергично подавил попытку восстановить независимость Смоленского княжества (осуществленную в 1401 г. князем Юрием Святославичем при поддержке Рязани и части местных жителей), восстанавливал и накапливал силы. В 1410 г. был Грюнвальд, где соединенные силы Витовта и Ягайло нанесли сокрушительное поражение Ордену (и где именно стойкость трех смоленских полков в решающий момент сражения способствовала победе). После завершения войны и окончательной передачи Литве Жмудской земли в 1422 г. Витовт еще раз попытался добиться гегемонии Великого княжества в Восточной Европе. Все эти годы он укреплял свои позиции на славянских землях, придерживаясь, как и его предки, политики веротерпимости. Кстати, еще в 80-е годы XIV в. Витовт, претендуя на Луцкое княжество, носил православное имя Юрий (по- видимому, как и Ягайло, не совершив самого акта крещения); крестившись в «лядскую веру» (католичество) под именем Александра, он сохранил полное равнодушие к теологии, но прекрасно понимал политическое значение церкви, в том числе и православной иерархии. Отсюда и традиционные для Великого княжества попытки или подчинить себе всю русскую церковь, или создать собственную иерархию. В 90-е годы XIV в. Витовт поддерживал оживленные контакты с митрополитом Киприаном, который в 1396 г. после встречи Василия и Витовта в Смоленске «идеть к Киеву и тамо пребысть полътора года». При этом Киприан вел переговоры с Витовтом и Ягайло о возможности заключения унии католической и православной церкви и совместной борьбы против Орды. В 1416 г., недовольный митрополитом Фотием, Витовт добился от православных епископов княжества выбора нового митрополита — болгарина Григория Цамблака. Константинопольская патриархия, впрочем, не признала этого выбора. Цамблаку не удалось осуществить планы унии (их активно поддерживал Витовт, надеясь тем самым устранить антагонизм между православным и католическим населением). Цамблак умер в изгнании (в 1420 г.), а Витовт помирился с Фотием, поддерживая одновременно и католическую церковь, продолжавшую миссионерскую деятельность в коренной Литве и особенно на Жмуди. Организованные в Жмуди, в Киеве и Луцке новые католические епископства получили довольно щедрые пожалования.
20-е годы XV в.— период наибольших внешнеполитических успехов Великого княжества. Под влиянием Витовта находились Заволжская Орда и Крым, где сменяли друг друга слабые ханы, искавшие дружбы могущественного литовского государя (некоторые из них даже короновались на ханство в Литве и занимали престол с помощью литовских отрядов). В 1425 г. умер зять Витовта, московский князь Василий Дмитриевич. При нем Москва, сохраняя лидерство на Северо-Восточной Руси, довольно последовательно признавала ведущую роль Вильно в делах «всея Руси». «Государь шести или семи нынешних губерний в северной России», как назвал его Карамзин, московский князь стремился избегать столкновений с могущественной Литвой, не ставя себе никаких сколько- нибудь серьезных задач за пределами традиционной сферы московского влияния. Умирая, Василий Дмитриевич поручил малолетнего сына опеке Витовта. Вероятно, этот акт должен был помешать претензиям на московский престол других сыновей Дмитрия Донского (по старому закону о престолонаследии и по завещанию Дмитрия имевших больше прав на власть). Во всяком случае, эта опека при сохранении реальной власти за дочерью Витовта Софьей еще более повысила авторитет литовского великого князя среди русских князей, формально не подчинившихся Великому княжеству, но фактически уже в той или иной мере находившихся под его влиянием.