Nach dem Ausbruch des Burenkrieges übernahm er, als Generalmajor, unter George Stuart White das Kommando über die Kavallerie in Natal. Am 21. Oktober 1899 schlug er mit der Schlacht von Elandslaagte eine der wenigen Schlachten in diesem Konflikt, die von den Briten taktisch klar gewonnen wurde. Er entkam anschließend aus dem belagerten Ladysmith und erhielt den Befehl über die neuformierte Kavalleriedivision in der Armee Lord Roberts’. Mit dieser entsetzte er im Februar 1900 die Garnison von Kimberley und nahm an der anschließenden Schlacht von Paardeberg teil. Ab Oktober 1900 befehligte er den Distrikt Johannesburg, und ab Juni 1901 war er militärischer Befehlshaber der Kapkolonie. Noch in Südafrika erfuhr er, dass er in Nachfolge Redvers Bullers zum Kommandierenden General des I. Armeekorps und Befehlshaber der Garnison Aldershot ernannt worden war.