В сентябре 1390 года отряд тевтонцев во главе с Витовтом пришел к Вильне и захватил деревянный Кривой замок, но Верхний и Нижний замки выстояли. Через год он овладел Городней, а еще год спустя захватил Новогородок и вновь угрожал Вильне. Война показала, что Ягайло не удержит власть над Великим Княжеством, если не пойдет на компромисс.
Весной 1392 года он вступил в тайные переговоры с Витовтом и пообещал ему возвратить все прежние владения Кейстута. В Острове, что под Лидой, 4 августа 1392 года Ягайло и Витовт подписали соглашение. Правление государством пожизненно передавалось Витовту, которому, согласно летописи, «рада была вся земля литовская и русская».
Вступив на виленский трон, великий князь Витовт начал укреплять свою страну, делая ее независимой от Польского Королевства. Вначале ее необходимо было централизировать, для чего Витовт подчинил себе наиболее самостоятельные уделы, заменил князей своими наместниками, а землям дал уставные грамоты.
Укрепив свои позиции в государстве, Витовт сразу пошел на обострение отношений с Польшей. Возмущенный письмом Ядвиги, которая требовала дани, великий князь собрал бояр на неманском острове Самин. Те поддержали Витовта, заявив, что они «всегда были свободными, как и предки, и никогда не платили никакой дани Польше», и провозгласили Витовта своим королем.
Чтобы сделать Тохтамыша правителем Орды и впоследствии располагать его поддержкой в восточной политике, Витовт в 1399 году подготовил большой поход против татар. Совместно с его войском на юг двинулась помощь из Польши и Прусского ордена. Но 12 августа в битве у реки Ворсклы татары Тимур-Кутлука разгромили силы Витовта. Это поражение заставило великого князя пойти на укрепление альянса с Ягайлой.
Чтобы поправить свое положение после Ворсклы, Витовт энергично занялся восточной политикой. Он умело использовал союз с Москвой, закрепленный династическим браком, и расширил свое влияние на восточнославянские земли. Урегулирование отношений с Московским княжеством, Новгородом и Псковом позволило начать борьбу с Тевтонским орденом. Когда в 1409 году население Жемайтии выступило против немцев, Витовт поддержал восстание. За него вступилась Польша, и Орден объявил им войну.
Ягайло и Витовт разработали план совместных действий. В начале июля 1410 года они привели свои соединенные войска на территорию Пруссии. У Витовта было 40 хоругвей из всех земель Великого Княжества, в том числе городенская, витебская, полоцкая, смоленская, пинская, новогородская, берестейская, волковысская и другие, а также отряды татарской конницы, — все вместе составляло около 10–12 тысяч всадников. У Ягайлы в 51 хоругви насчитывалось 12–14 тысяч конников. На помощь полякам пришли наемные солдаты из Чехии во главе с Яном Жижкой. Силы Ордена составляли примерно 16 тысяч рыцарей.
Битва произошла 15 июля у прусских деревень Танненберг и Грюнвальд и завершилась полным разгромом орденского войска. Союзники двинулись дальше в Пруссию. Над Орденом нависла смертельная опасность. Прусские замки и города сдавались без сопротивления, нобилитет и епископы присягали победителям.
Однако столица Ордена Мальборк мужественно оборонялась, и два месяца осады не принесли никакого результата. Война закончилась Торуньским миром 1411 года.
В 1420-х годах великий князь Витовт достиг во внешней политике наибольших успехов. В определенной зависимости от него находились Крымская и Заволжская орды, Москва (князь Василий Дмитриевич в 1426 году доверил Витовту опеку над своим несовершеннолетним сыном), Псков и Новгород. В 1429 году он сблизился с императором Священной Римской империи Сигизмундом, который предложил Витовту королевскую корону. Великий князь вначале отказался, но, после того как польские паны недвусмысленно намекнули ему о его зависимости от Польши, принял предложение. Коронацию назначили на 8 сентября 1430 года, однако послы с короной от императора были задержаны поляками. Витовт умер 27 октября 1430 года, так и не став королем.
После смерти Витовта князья и бояре провозгласили великим князем Свидригайлу Ольгердовича. Свидригайло был хорошо известен в белорусских землях, где пользовался популярностью как противник сближения с Польшей.
Его княжение началось борьбой с Польским Королевством за Подолье и Волынь. В поисках союзников он сумел сблизиться с татарами, Молдовой, Псковом, Новгородом, подписать оборонительные соглашения с Прусским и Инфлянтским орденами. Император Сигизмунд пообещал Свидригайле королевскую корону. Однако открытая антипольская политика великого князя вызвала сопротивление сторонников унии.
Брат Витовта Жигимонт, который был князем стародубским, и Сымон Гольшанский организовали покушение на Свидригайлу и напали на него ночью 1 сентября 1432 года в Ошмяне. Чудом оставшись в живых, тот бежал в Полоцк.
Пропольская партия боярства сразу же посадила на виленский трон Жигимонта Кейстутовича. Однако Полоцкая, Витебская, Смоленская и Киевская земли, а также Северщина, Волынь и Подолье не признали Жигимонта и считали своим великим князем Свидригайлу. Началась гражданская война. Жигимонт сразу же восстановил союз с Польшей, и оттуда ему на помощь пришли военные отряды.
Свидригайло совершал походы к Вильне и Новогородку, а Жигимонт в 1435 году водил войска до самого Мстиславля. В генеральной битве у Вилькомира Свидригайло был разгромлен и бежал на Украину.
Но и политика Жигимонта Кейстутовича, который, с одной стороны, отдал полякам Подолье, а с другой — противоречил Кракову и, укрепляясь на великокняжеском престоле, стремился ослабить зависимость от Польши, умножила партию его противников.
Крайней жестокостью по отношению к аристократии, попытками ослабить ее позиции и окружить себя новыми, лично преданными ему, людьми Жигимонт сплотил своих врагов. Воеводы Довгирд и Лелюша подготовили покушение на великого князя. 20 марта 1440 года его совершили князь Александр Чарторыйский и киевлянин Скабейка, которые тайно проникли в Трокский замок, укрывшись в возах с сеном.
Рада Великого Княжества сразу же провозгласила монархом 13-летнего Казимира Ягайловича. Самостоятельное избрание Казимира на виленский престол упразднило унию с Польшей, восстановленную Жигимонтом в 1432 году, и юридически оба государства Ягайловичей больше ничем не были объединены. Но в 1444 году в битве под Варной пропал без вести польский король Владислав. Поляки предложили корону Казимиру, и в июне 1447 года с согласия своих приближенных он стал королем Польши.
Внутренняя политика Казимира была направлена на консолидацию общества и централизацию государства. В 1447 году, отправляясь на коронацию в Краков, он издал привилей, которым наделял шляхетскими правами князей, панов и бояр всей страны, независимо от вероисповедания. Ранее мелкое боярство не пользовалось такими привилегиями. На восточных и южных землях Казимир сажал наместников, чтобы укрепить их связь с Вильней.
Однако, занимаясь преимущественно польскими делами, Казимир Ягайлович больше времени проводил в Польше. Его отсутствие снижало дееспособность центральной власти, отрицательно влияло на государственную политику в целом. Правительственные круги неоднократно просили Казимира или все время находиться в пределах Великого Княжества, или согласиться на избрание нового монарха. Кандидатом на виленский престол предлагался Семен Олелькович, слуцкий православный князь, которого поддерживали и католики.
Во внешней политике Казимира главным, пожалуй, было подписание в 1449 году «вечного мира» с Москвой. Договор разграничивал сферы влияния Москвы и Вильни и надолго стабилизировал их взаимоотношения. Московский князь Василий Слепой обязался не вмешиваться в смоленские дела, а Казимир — не вступаться за Новгород, Псков и Ржев. Монархи договорились также не принимать князей-перебежчиков.
Для Вильни это стало поворотной точкой в восточной политике. В отличие от времен Витовта она отказывалась от активной роли на сопредельных землях и признавала право на них за Москвой. Благодаря этому Москва уже в 1451 году поставила в зависимость, а в 1485 году и окончательно подчинила Тверь. Тогда же была ликвидирована самостоятельность Рязанского княжества. В поисках помощи для борьбы с Москвой Новгород сам просил у Казимира Ягайловича поддержки, но тот только прислал наместником слуцкого князя Семена Олельковича, когда же дело дошло до войны с Москвой, не заступился. И, расправившись с новгородцами, Иван III в 1478 году подчинил республику своей власти.