Charles Shepherd was the son of a Barbados-born doctor. The family moved to Cardiff in 1891, when Charles was just four-years-of-age. His father practiced in the town for over 25 years and Shepherd also became a doctor. He studied at Cardiff College, London University, and Charing Cross Hospital where he obtained a distinction in pharmacology. Like his father, he became a general practitioner
Shepherd played hockey for the Whitchurch Hockey Club in Cardiff and made his international début for Wales against Scotland at Abergavenny in 1907, just 10 days before his 20th birthday. He played for Wales in their only game at the 1908 London Olympics, a 3-1 defeat to Ireland, yet still collected a bronze medal.