Per Meksikos-Amerikos karą Grangeris kovojo Vinfildo Skoto armijoje. Jis dalyvavo Veracruzo apgultyje, Cerro Gordo mūšyje, Contreras mūšyje, Churubusco mūšyje.
, ir mūšis už Meksikos miestą. Grangeris gavo du apdovanojimus už didybę, o 1847 m. gegužę gavo reguliarų komandą antruoju leitenantu. Po karo jis tarnavo Vakarų pasienyje Oregone, o vėliau ir Teksase. 1853 m. tapo pirmuoju leitenantu.