Po zwycięstwie w bitwie pod Albuerą powrócił do operacji oblężniczych, jednakże ze względu na zagrożenie ze strony połączonych armii Marmonta i Soulta, 17 czerwca zmuszony został do wycofania się. Podczas tych działań głównym obiektem ataku był fort San Cristobal na północnym brzegu Gwadiany. Do czwartego oblężenia Badajoz Brytyjczycy pod osobistym dowództwem Arthura Wellesleya, późniejszego księcia Wellington, przystąpili 16 marca 1812 roku, wkrótce po zdobyciu Ciudad Rodrigo. Działania prowadzono od strony południowo-wschodniej: 25 marca padł fort Picurina, a 5 kwietnia gotowe były wyłomy w murach. Szturm przeprowadzono 6 kwietnia po tym, jak Wellesley do wiedział się, że odsiecz dowodzona przez Soulta znajduje się już w miejscowości Llerena w odległości około 110 km. Podjęto około 40 prób wdarcia się do miasta, które zakończyły się sukcesem dopiero po dodatkowych atakach na bastion San Vincente od strony zachodniej, oraz na zamek. Straty brytyjskie w wyniku szturmu wyniosły około pięciu tysięcy żołnierzy, co stanowiło około 30% stanu atakującej armii. Zdobycie miasta skończyło się trzydniową falą grabieży, gwałtów i morderstw, których ofiarą padła cywilna ludność Badajoz.