Roberts syntyi Intiassa, mutta opiskeli Etonissa ja Sandhurstissa. Valmistuttuaan hän pestautui Englannin Itä-Intian kauppakomppanian palvelukseen ja päätyi Bengalin tykistöön vuonna 1851. Hän osallistui vuonna 1857 sepoykapinan tukahduttamiseen luutnanttina ylipäällikön esikunnassa, ja sai ansioistaan Viktorian ristin. Roberts osallistui vuoden 1868 Etiopian-sotaretkeen sekä vuosien 1871–1872 Lushain sotaretkeen Koillis-Intiassa. Vuonna 1878 hänet ylennettiin everstiksi ja nimitettiin Intian-joukkojen päämajoitusmetariksi. Toisen afgaanisodan alussa 1878 Roberts johti aluksi sotilaskolonnaa, joka eteni Kabuliin Kuramin solan kautta ja löi afgaanit Peiwar Kotalin taistelussa. Vielä samana vuonna hänet ylennettiin kenraalimajuriksi ja hän johti operaatioita, jotka johtivat Kabulin valtaukseen. Elokuussa 1880 Roberts marssitti 10 000 miehen armeijansa 23 päivässä Kabulista Kandahariin. Sen jälkeen hän löi 1. syyskuuta Mohammad Ayub Khanin joukot Kandaharin taistelussa. Robertsin Kandaharissa ja Kabulissa saavuttamien voittojen ansiosta britit pystyivät vetäytymään Afganistanin valloitusyrityksestään neuvotteluteitse.