Clarke was born in Connecticut and served in the United States Army during the War of 1812. At the outbreak of the Mexican–American War in 1846, he was appointed colonel in the regular army. He commanded a brigade of regulars in General William J. Worth's division during the siege of Veracruz, being one of the first brigades to wade ashore. For his services at Veracruz, he was awarded with a brevet promotion to brigadier general of regulars. He continued leading his brigade at the battles of Cerro Gordo and Churubusco, where he was wounded. He took a brief leave and command of the brigade went to his next in command, Lt. Col. James S. McIntosh. He was therefore not present at the bloody battle of Molino del Rey in which McIntosh was killed at the head of the brigade. The next officer to assume command of the brigade was also killed and the third commander of the brigade during the battle was severely wounded. Clarke returned to command in time for the assaults on Chapultepec and Mexico City.