Podczas I wojny burskiej (1880–81) służył jako podporucznik. Został wzięty do niewoli podczas bitwy na wzgórzu Majuba. Jego odwaga tak zaskoczyła wroga, że gen. Joubert postanowił zwrócić mu jego szablę. W 1885 MacDonald służył pod dowództwem sir Evelyna Wooda podczas przegrupowania armii egipskiej. Wziął także udział w brytyjskiej ekspedycji na Nilu w tym samym roku. W 1888 otrzymał stopień kapitański w armii brytyjskiej, lecz zdecydował się kontynuować służbę w Egipcie, koncentrując się na szkoleniu oddziałów sudańskich. W 1889 roku otrzymał Distinguished Service Order (DSO) za przeprowadzoną operację podczas bitwy pod Toski, a w 1891 za kolejne zasługi w Taukarze został awansowany na majora.