Nach seiner Kindheit in Indien wurde er in Eton, in der Royal Military Academy Sandhurst und Addiscombe erzogen. Am 20. Februar 1852 reiste er von Southampton über Ägypten nach Indien. Im April begann er seinen Dienst bei der bengalischen Artillerie der Britischen Ostindien-Kompanie in Calcutta und diente dort als Second Lieutenant. Im November 1852 erreichte er Peschawar, an der "North West Frontier", wo die Division seines Vaters stationiert war. Roberts diente dort in einer Gebirgsbatterie. Im April 1854 erhielt Roberts, wegen häufiger Fieberanfälle, einen sechsmonatigen Urlaub, den er in Kaschmir verbrachte. Nach seiner Rückkehr nach Peschawar wurde er als Leutnant zur berittenen Artillerie versetzt. Im Frühjahr 1855 wurde er, wieder wegen des Fiebers, beurlaubt und ging für acht Monate erneut nach Kaschmir. Ab Sommer 1856 erfolgte seine Verwendung als Quartiermeister. Im Mai 1857 wurde Roberts in den Stab der neu aufgestellten fliegenden Kolonne versetzt. Mit dieser kämpfte er 1857/58 im Sepoy-Aufstand bei Delhi und Lakhnau. Für seinen Einsatz bei Khudaganj erhielt er 1858 das Viktoria-Kreuz.