He served as adjutant of the 1st battalion from 21 January 1899 and throughout the Second Boer War (1899–1902), when the battalion was posted to South Africa. They were part of the force sent to relieve the siege of Kimberley, and saw action at the Battle of Magersfontein in December 1899, where Gordon was wounded. He then served in the Orange Free State from February to May 1900, and took part in the battles of Paardeberg (February 1900), Poplar Grove, Driefontein (March 1900), Hontnek, Vet River and Hand River. Transferring to Transvaal, the battalion was again in action at Doornkop in May 1900, where they suffered severe losses, then took part in the battles of Belfast and Lydenburg (August 1900). The battalion stayed in South Africa throughout the war, which ended with the Peace of Vereeniging in June 1902. Four months later 475 officers and men of the 1st battalion left Cape Town on the SS "Salamis" in late September 1902, arriving at Southampton in late October, when the battalion was posted to Glasgow.