Gdy rozpoczęła się wojna amerykańsko-meksykańska prezydent James Polk 29 czerwca 1846 roku mianował go generałem. Butler dowodził 1. Dywizją Ochotniczą w armii dowodzonej przez Zacharego Taylora. Był drugim dowodzącym zaraz po Taylorze. Jego oddział walczył w Bitwie pod Monterrey. Brał w szturmie na miasto Meksyk i został w trakcie tej akcji ranny w nogę, przez co musiał opuścić pole bitwy. Za swoje dokonania w Monterrey otrzymał podziękowania od kongresu i dwie szable w geście uznania – jedną od kongresu, a drugą od ludności Kentucky. W 1847 roku Butler otrzymał nową dywizję i połączył siły z oddziałami generała Winfielda Scotta w mieście Meksyku, a w 1848 roku przejął oddziały po odejściu Scotta. Przewodniczył wycofaniu się amerykańskich wojsk z miasta. Zakończył służbę wojskową 18 sierpnia 1848 roku po tym, jak został nominowany przez demokratów na kandydata na wiceprezydenta w nachodzących wyborach.