Grant urodził się w Nairn na Szkockich Wzgórzach, gdzie jego ojciec był pastorem parafialnym, a wykształcił się w Nairn Academy, Aberdeen Grammar School i Marischal College w Aberdeen. W 1846 roku wstąpił do armii indyjskiej. Brał udział w wojnie Sikhów.
(1848 <unk> 49), służył podczas Buntów Indyjskich w 1857 roku i został ranny w operacjach na rzecz ulgi w Lucknow.