Terwijl guerrilla's zijn communicatielijn terug naar Veracruz lastigvielen, besloot Scott zijn leger niet te verzwakken om Puebla te verdedigen, maar, terwijl hij alleen een garnizoen in Puebla achterliet om de zieken en gewonden die daar herstelden te beschermen, rukte hij op 7 augustus op naar Mexico-Stad met zijn resterende troepenmacht. De hoofdstad werd opengelegd tijdens een reeks veldslagen rond de rechterflank van de stadsverdediging, de Slag bij Contreras en de Slag bij Churubusco. Na Churubusco stopten de gevechten voor een wapenstilstand en vredesonderhandelingen, die op 6 september 1847 mislukten. Met de daaropvolgende veldslagen van Molino del Rey en Chapultepec, en de bestorming van de stadspoorten, werd de hoofdstad bezet. Scott werd militair gouverneur van het bezette Mexico-Stad. Zijn overwinningen in deze campagne maakten hem tot een Amerikaanse nationale held.
De Slag bij Chapultepec in september 1847 was een belegering van het kasteel van Chapultepec, gebouwd op een heuvel in Mexico-Stad in het koloniale tijdperk. In die tijd was dit kasteel een gerenommeerde militaire school in de hoofdstad. Na de strijd, die eindigde in een overwinning voor de VS, werd de legende van "Los Niños Héroes" geboren. Hoewel niet bevestigd door historici, bleven zes militaire cadetten tussen de 13 en 17 jaar in de school in plaats van te evacueren. Ze besloten te blijven en voor Mexico te vechten. Deze Niños Héroes (jongenshelden) werden iconen in het patriottische pantheon van Mexico. In plaats van zich over te geven aan het Amerikaanse leger sprongen enkele militaire cadetten van de kasteelmuren. Een cadet genaamd Juan Escutia wikkelde zich in de Mexicaanse vlag en sprong zijn dood tegemoet.