Between 1996 and 2007 Brown represented Great Britain, however he changed his allegiance to Canada in October 2007, after his British lottery funding was cut due to his age and history of injuries. He is a former European Cross Country champion and three-time Olympian; who placed 4th in two successive Olympic Games whilst representing Great Britain.
Brown participated in the 2000 Sydney Olympics in that discipline where he placed fourth and also in the 2004 Athens Olympics, where he was again fourth in the marathon. In the former race he missed 3rd place by 7 seconds and in the latter by 15 seconds. He gained Canadian citizenship in 2005, after living in Victoria, Canada since 1996; but continued to make himself available for Britain until late 2007.