Během mexiko-americké války bojoval v bitvě u Contreras a v bitvě u Churubusca.
, oba v srpnu 1847. Během boje u Churubusca byl znovu zraněn a jeho výkon v kombinaci s jeho akcemi u Contreras mu 20. srpna získal titul majora. Walker se pak zúčastnil bitvy u Molina del Rey na začátku září a byl znovu zraněn, tentokrát zezadu. Za své činy tam byl 8. září povýšen na podplukovníka.