Объединив под своим командованием силы Новгородской земли и варягов, Ярослав, как некогда его отец, в сентябре 1015 г. двинулся на юг против Святополка, который, в свою очередь, призвал на помощь печенегов. Решающая битва произошла под Любечем, севернее Киева, в конце ноября того же года. Святополк был разбит и бежал в степи. «Ярослав же сел в Киеве на столе отчем».
Борьба со Святополком, за коварство и жестокость по отношению к братьям прозванным Окаянным, не закончилась этой победой. За Святополком стояли половцы и поляки, Ярослав же мог рассчитывать на помощь шведов и Северной Руси, а также на поддержку киевлян. Для пополнения сил Ярослав, утвердившись в Киеве, в 1016 г. вновь отправляется в Новгород. Этим решил воспользоваться Святополк, в 1017 г. появившийся под стенами столицы с печенегами. К счастью, Ярослав со свежими силами подоспел вовремя. Готовясь к решающему сражению, он поставил в центре варягов (во главе с Эгмундом, сыном норвежского короля Ринга), на правом фланге — киевлян, на левом — новгородцев.
Печенеги атаковали и через недостроенные укрепления Большого верхнего города (известного в литературе как «город Ярослава») прорвались к возводившемуся Софийскому собору, сильно пострадавшему от пожара. Однако к вечеру они были полностью разбиты и в панике рассеялись по ярам и лесам в окрестностях города. Святополк же укрылся у тестя — Болеслава Храброго, чья власть к тому времени простиралась не только на территорию Польши в ее современных границах, но и на земли Моравии и Словакии, от Балтийского моря до Дуная. Воодушевленный победой, Ярослав в сентябре 1017 г. выступил против Болеслава, но тот, спешно помирившись в октябре с немецким императором, смог развернуть против киевского князя сильное войско. Ярославу удалось овладеть лишь одним польским городом. Приближение зимы вынудило его отвести войска к Киеву.
В 1018 г. война возобновилась. В июне, как только просохли дороги, Болеслав и Святополк с польскими войсками, немецкими и венгерскими наемниками и вспомогательными печенежскими отрядами двинулись на Волынь. Ярослав выступил им навстречу. Во второй половине июля армии сошлись на берегу Западного Буга. Несколько дней они стояли друг против яруга, затем Болеслав неожиданно атаковал и выиграл битву. Разбитый Ярослав бежал к Новгороду, а Болеслав со Святополком уже в августе вступили в Киев, где перед Софийским собором их с иконами и мощами святых встречала возглавляемая митрополитом делегация.
Но вскоре случилось непредвиденное. Польские войска, которые Болеслав разместил «на покорм» в городах и селах Южной Руси, нещадно грабили население, и люди в ответ начали расправляться с ними. Разворачивалась партизанская война. В это время отношения между Святополком и Болеславом обострились. Не исключено, что именно зять санкционировал нападения повстанцев на польские отряды. Не желая терять своих солдат, Болеслав, прихватив сокровища из княжеского дворца, часть бояр, а также сестер Ярослава, Предславу и Премыславу, к началу 1018 г. вернулся в Польшу. Результатом его похода было отторжение от Руси червенских городов.
Утвердившийся в Киеве силой польского оружия, Святополк не пользовался популярностью у населения. Ярослав же собрал в Новгороде новое войско. В конце 1018 г. он разбил Святополка и вступил в столицу. Святополк бежал в степи и вновь призвал печенегов. В конце июля 1019 г. на реке Альте, на том самом месте, где тремя годами ранее был убит Борис, полки Ярослава преградили кочевникам дорогу. В ожесточенном, длившемся весь день сражении войска степняков были окончательно разбиты. Этой победой Ярослав сломил могущество печенегов, около ста лет угрожавших южным рубежам Руси. А Святополк, не полагаясь уже ни на печенегов, ни на Болеслава, бежал в Чехию, где вскоре умер.
Ярослав мог торжествовать окончательную победу. В 1020 г. у них с Ингигердой родился сын, названный в честь деда Владимиром.
Вопреки ожиданиям, усобицы на Руси не прекратились. Князь Полоцка Брячеслав, племянник Ярослава, в 1021 г. неожиданно напал на Новгород и разграбил город. Собрав киевскую дружину, Ярослав разбил его на обратном пути. Плененные новгородцы возвратились домой, а Брячеславу удалось укрыться в Полоцке. Некоторое время они враждовали, но в итоге примирились и Брячеслав Изяславич признал верховенство Ярослава.
Гораздо больше хлопот доставил киевскому князю его младший единоутробный брат Мстислав, в свое время оправленный Владимиром править в далекую Тмутаракань. В братоубийственной распре он не участвовал, занимаясь укреплением позиций Руси в Предкавказье. Славу ему принесла победа над касожским (черкесским) князем Редедей.
В начале 1024 г., когда Ярослав находился в Новгороде, Мстислав со своей дружиной и подвластными ему хазарами и черкесами неожиданно появился у стен столицы, однако киевляне не приняли его и он занял Чернигов. Узнав об этом, Ярослав стал готовиться к войне, однако недооценил силы брата. Осенью 1024 г. Мстислав нанес войску Ярослава сокрушительное поражение под городком Лиственом неподалеку от Любеча, но убедившись в том, что киевляне не желают видеть его великим князем, сам обратился к Ярославу с предложением: «Сиди ты на столе своим в Киеве, поскольку ты есть старший брат, а мне пусть будет сия сторона» — Днепровское Левобережье. Ярослав ответил не сразу, с осени 1024 до весны 1026 г. оставаясь в Новгороде, тогда как «в Киеве сидели мужи Ярославовы».
В 1025 г. у Ярослава родился сын Изяслав, княживший на Руси после смерти отца. В ближайшие годы Ингигерда родила ему еще двух будущих великих князей — Святослава в 1027-м и спустя три года — Всеволода.
Весной 1026 г. Ярослав, собрав значительные силы, двинулся к своей столице. Из Чернигова к Киеву выступил и Мстислав. Князья встретились на рукаве Десны в месте ее впадения в Днепр и в ходе личных переговоров Ярослав принял предложения брата. На Руси утвердилось их совместное правление. Мстислав признал за Ярославом старшинство и власть над Киевом и Новгородом, а также всеми землями к западу от Днепра, а за собой оставил земли восточнее Днепра с центром в Чернигове, а также Тмутаракань с Белой Вежей.
Разногласий между братьями более не возникало, и они помогали друг другу в войнах. Наиболее значительным их успехом стала победа над Польшей, ослабленной начавшимися после смерти Болеслава Храброго распрями. В 1031 г. Ярослав и Мстислав выступили в поход против Польши, в результате чего под власть Киева была возвращена Червенская Русь с городами Перемышль и Холм. Из польского плена возвратились томившиеся там свыше десяти лет киевские бояре, уведенные Болеславом. Братья смогли повидаться со своими сестрами Предславой и Премыславой, уже давно состоявшими в браке с представителями правящих домов Чехии и Венгрии.
Князь Ярослав Мудрый.
Взятых в Польше пленников Ярослав расселил на южных рубежах Киевской земли вдоль реки Рось, где в 1032 г. начал создавать новую оборонительную линию. Ее ключевыми городами-крепостями стали Родня, Корсунь, Богуслав и названный в честь небесного патрона великого князя, Георгия Победоносца, Юрьев (современная Белая Церковь). Ярослав стремился и к упрочению позиций Руси в Прибалтике. В 1030 г. он победил чудские племена, предков эстонцев, и основал в их земле город-крепость Юрьев (современный Тарту). За этим последовали походы Ярослава на ятвягов, Литву и мазовшан, а его старший сын Владимир, правивший Новгородской землей, покорил финно-угорские племена за Невой и Ладогой.
В 1034 г. неожиданно умер Мстислав, недавно похоронивший своего единственного сына Евстафия. Под власть Ярослава перешли все земли к востоку от Днепра с отдаленными колониями на Дону и у Керченского пролива. В том же году у Ярослава и Ингигерды родился еще один сын, названный Вячеславом, а два года спустя — их последний сын Игорь. Кроме сыновей, у них было трое дочерей: Анастасия, Елизавета и Анна.
К концу 30-х годов XI в. владения великого князя простирались от Финского залива, Ладоги и Онеги до Черного и Азовского морей, от Карпат и Нижнего Дуная до Средней Волге и верховьев Северной Двины, превосходя по размерам остальные христианские страны. По численности населения Русь в Европе уступала лишь Восточной (Византийской) и Западной (Священной Римской) империям. Печенеги, потерпевшие тяжелые поражения от дружин Ярослава под Киевом в 1017 г. и на Альте в 1019 г., более не решались тревожить Русь с юга. Племенные объединения Восточной Прибалтики, в пределах современных Литвы, Латвии и Эстонии, признавали себя данниками Руси. С Польшей был заключен почетный для Киева мир, а со скандинавскими странами, Чехией и Венгрией Ярослав поддерживал традиционно дружеские отношения.
Политическим успехам Руси отвечало и проводившееся Ярославом монументальное строительство. В 1037 г. были завершенные начатые еще князем Владимиром работы по созданию нового кольца оборонительных сооружений вокруг разросшегося Киева. Кроме валов, рвов и оборонительных стен, они включали башни и несколько ворот. Парадными считались обращенные прямо на юг, как бы противостоявшие Константинополю, знаменитые, богато украшенные Золотые ворота, над которыми высилась церковь Благовещения. К этому времени был закончен и ансамбль уже давно действовавшего Софийского собора с расположенным рядом комплексом зданий митрополии. Тогда же состоялись торжественные церемонии и празднества по поводу завершения столь масштабных работ, совпавшие с празднованием 500-летия Софии Константинопольской, освященной в 537 г. и считавшейся «матерью» Софии Киевской.