Gomm returned to Portugal in March 1810 and, as a staff officer, took part in the Battle of Bussaco in September 1810 and the Battle of Fuentes de Oñoro in May 1811 before being promoted to major on 10 October 1811. He went on to fight at the Siege of Ciudad Rodrigo in January 1812, the Siege of Badajoz in April 1812 (where he was wounded) and the Battle of Salamanca in July 1812 before being promoted to lieutenant colonel on 17 August 1812. After that he took part in the Siege of Burgos in September 1812, the Battle of Vitoria in June 1813 and the Siege of San Sebastián in July 1813 as well as the Battle of Nivelle in November 1813 and the Battle of the Nive in December 1813 (where he was wounded again). Following his return to England, he transferred into the Coldstream Guards on 25 July 1814 and was appointed a Knight Commander of the Order of the Bath on 2 January 1815.