Tijdens de Slag bij Monterrey op 21-24 september 1846 werd Duncan's batterij toegewezen aan de brigade van Thomas Staniford in de divisie van William J. Worth. Taylor viel de stad aan vanuit het noorden, terwijl hij de troepen van Worth stuurde om vanuit het westen aan te vallen. De batterijen van Duncan en William W. Mackall waren betrokken bij de verovering van het Bisschoppaleis op 22 september. Duncan werd kolonel voor "dappere en verdienstelijke gedrag" bij Monterrey. Begin januari 1847 kreeg Taylor het bevel om de divisies van Worth en Twiggs en twee batterijen, waaronder die van Duncan, over te dragen aan het leger van Winfield Scott. Duncan vocht bij het beleg van Veracruz.
Op 29 maart 1847, in de Slag bij Cerro Gordo op 17 april 18 en in een schermutseling in Amazoque op 14 mei.