Важнейшей заботой Наполеона после одержанной победы было ужесточение континентальной блокады. Поскольку Германия, Нидерланды и Россия уже присоединились к ней, предстояло принудить к тому страны Пиренейского полуострова. В октябре 1807 г. император отправил в Португалию 27-тысячную армию под командованием Жюно, а вслед за ней – ещё одну под началом генерала Дюпона. 29 ноября Жюно без боя вступил в Лиссабон. За два дня до этого принц-регент Жуан (будущий король Жуан VI) покинул столицу и уплыл в Бразилию. Вся страна оказалась под властью французов. Испания в этом конфликте выступила на стороне Франции. Под предлогом военных действий Наполеон наводнил её своими войсками. В марте 1808 г. здесь уже было сосредоточено до 100 тысяч человек. Король Карл IV был наконец обеспокоен этим обстоятельством, но прежде чем он успел что-то предпринять, 80-тысячный корпус Мюрата подступил к Мадриду. Король бежал из столицы, но в Аранжуэце был задержан восставшим народом. Здесь 17 марта Карл отрекся от престола в пользу своего сына Фердинанда VII, а через шесть дней, 23 марта, Мюрат вступил в испанскую столицу. Наполеон не признал происшедшего переворота и вытребовал к себе в Байонну обоих Бурбонов. Между тем 2 мая в Мадриде произошло народное восстание против оккупационных войск, которое Мюрат потопил в крови. Воспользовавшись этим, император отнесся к Карлу и Фердинанду очень сурово и потребовал, чтобы они оба отреклись от престола в его пользу. Те безропотно подчинились его диктату. 10 мая Наполеон приказал своему брату Жозефу, королю Неаполитанскому, переехать в Мадрид и отныне быть королём испанским, а Мюрата сделал королём неаполитанским.
Казалось, что завоевание Испании закончено. Но на самом деле все только начиналось. С первых же своих шагов в Испании французы натолкнулись на бесчисленные, чуть не ежедневные проявления самой неистовой фанатической ненависти. Летом началось мощное восстание в Андалузии. Генерал Дюпон, двинувшийся против повстанцев, был окружён ими и 20 июля сдался вместе со всем своим отрядом неподалеку от Байле-на. Впечатление, произведенное на Европу этим событием, было огУмер ромно. По многим признакам Наполеон сразу почувствовал, что его могущество поколебалось. Австрийское правительство, уже оправившееся против Аустерлицкой катастрофы, сразу повело себя более независимо. В сентябре Наполеон встретился в Эрфурте с Александром I и увидел, что имеет дело уже не с тем послушным союзником, которого он оставил в прошлом году в Тильзите. Чтобы добиться Продления франко-русского союза Наполеону пришлось пойти на целый ряд серьёзных уступок, которых он никогда не мог простить русскому императору. Чтобы восстановить своё положение в Европе, Наполеон должен был преподать на её глазах кровавый урок испанцам. Он это понимал и поздней осенью во главе 100-тысячной армии двинулся за Пиренеи. К этому времени положение французов здесь стало ещё хуже. Англичане высадились в Португалии и заняли Лиссабон. Вся южная Испания была охвачена огнем восстания. Здесь уже сформировалась настоящая повстанческая армия, вооруженная английским оружием. Французы сохранили контроль только над северной частью страны до реки Эбро. Император немедленно перешел в наступление и 10 ноября под Бургосом нанес испанцам сокрушительное поражение. 4 декабря он вступил в Мадрид и сразу обратился против англичан. Английский экспедиционный корпус был разбит, а командовавший им генерал Мур пал в бою. Но сопротивление не ослабевало. Сарагоса несколько месяцев упорно отражала все приступы французов. Наконец, в январе 1809 г. маршал Ланн вступил в город по трупам его защитников, но после этого ещё в течение трёх недель шли упорные бои буквально за каждый дом. Озверевшим солдатам пришлось убивать всех без разбора – женщин, детей и стариков. Обозревая заваленные трупами улицы, маршал Ланн сказал: «Такая победа доставляет только грусть!»
В то же время пришли известия о том, что Австрия вот-вот готова вступить в войну. Наполеон оставил Пиренеи, перепоручив войну маршалам и брату Жозефу, а сам поспешил в Париж. К весне он успел собрать против австрийцев 300-тысячную армию. 9 апреля австрийская армия под командованием эрцгерцога Карла перешла в наступление и вскоре вторглась из Богемии в Баварию. 19-23 апреля произошли большие сражения при Абенсберге, Экмюле и Регенсбурге. Потеряв в них около 45 тысяч человек, эрцгерцог Карл отступил на левый берег Дуная. Преследуя противника, Наполеон 13 мая занял Вену. 17 мая часть французской армии переправилась на дунайский остров Лобау. Затем были наведены мосты между островом и противоположным берегом реки. Корпуса Ланна и Массены вступили в яростную битву с австрийцами у деревушек Асперн и Эсслинг. В это время подломился мост, соединявший правый берег реки с островом, и французская армия лишилась подвоза боеприпасов. Император велел Ланну немедленно отступать. Австрийцы перешли в атаку и упорно преследовали врага. В ожесточённом бою погибло более 10 тысяч французских солдат. Сам маршал Ланн был смертельно ранен ядром и умер на руках Наполеона. После этого поражения военные действия прекратились на полтора месяца. Обе стороны готовились к решительной битве. Сосредоточив на Лобау несколько корпусов и более 500 орудий, Наполеон 5 июля вновь атаковал австрийцев.
Эрцгерцог Карл ожидал французов на левом берегу Дуная на высотах реки Русбах. Вблизи находилось село Ваграм, по имени которого битва получила своё название. К вечеру большая часть французской армии переправилась через Дунай и расположилась напротив австрийских позиций. Наполеон приказал сходу начать атаку. Однако этот неподготовленный штурм не имел успеха. Понеся большие потери, французы отступили. На следующий день, 6 июля, эрцгерцог Карл сделал попытку опрокинуть левый фланг Наполеона, отрезать его от Дуная и разгромить. Первоначально атака имела успех – французы стали отступать. Чтобы закрепить победу, Карл ввел в бой все резервы. В это время по правому флангу австрийцев нанес удар маршал Даву, а против центра вражеской армии Наполеон двинул корпус Макдональда. Маршал построил свои батальоны в огромное каре, сторона которого равнялась тысяче метров, и после мощной канонады прорвал центр австрийской армии. Этот натиск решил исход сражения. Эрцгерцог Карл потерпел катастрофическое поражение: треть его армии (32 тысячи человек) легли на поле боя, остальные в беспорядке отступили. Наполеону эта победа стоила 27 тысяч человек. 11 июля император Франц предложил Наполеону перемирие. Наполеон согласился. На начавшихся переговорах он потребовал, чтобы Франц уступил лучшие австрийские владения: Каринтию, Крайну, Истрию, Триест, часть Галиции, и выплатил контрибуцию в 85 миллионов франков. Пришлось принять все эти грабительские условия. 14 октября в Шенбрунне был подписан окончательный мир.