A widely respected referee, Barnes started playing rugby at the age of eight, and took up refereeing aged 15 with Gloucester & District Referees.
At university he transferred to the London Society of RFU Referees. In 2001, at the age of 21, Barnes became the youngest referee ever appointed to the Panel of National Referees. He became a professional referee in April 2005.
Barnes refereed at the 2003 U19 World Cup in Saint-Denis, the 2005 Under 21 Rugby World Championship in Argentina, and was the English representative on the Sevens circuit from December 2003 to March 2005. In 2006, Barnes made his Test debut as a referee, taking charge of three matches in the inaugural Pacific Five Nations.
Barnes was one of three English referees to officiate at the 2007 Rugby World Cup, the others being Chris White and Tony Spreadbury. After New Zealand were knocked out of the quarter-final, Bebo profiles were created by some New Zealand fans dedicated to criticism, and abuse, of Barnes. Comments on Bebo and other internet sites, including death threats and personal abuse, were condemned by the International Rugby Board and New Zealand Prime Minister Helen Clark.
In the 2008 Six Nations Championship, Barnes became the first English official ever to take charge of a match at Croke Park, in which Wales beat Ireland 16–12. In the 2009 Six Nations Championship, Barnes refereed the final-day decider between Wales and Ireland at the Millennium Stadium, Cardiff where Ireland were chasing their first Grand Slam for 61 years and Wales chasing the Championship.
He was appointed in 2008 to take charge of his first Heineken Cup knockout match, between Stade Toulousain and Cardiff Blues at Le Stadium on 6 April 2008. In 2010, Barnes officiated his first Heineken Cup Final between Toulouse and Biarritz at the Stade de France, Saint-Denis, on 22 May.
After officiating at his second Rugby World Cup (in New Zealand) in 2011 and presiding over the third/fourth place play off game between Wales and Australia, Barnes refereed the Heineken Cup semi-final match on Sunday 29 April 2012; Clermont Auvergne v Leinster. He was one of 12 referees selected to officiate the 2015 Rugby World Cup.
On 22 December 2017, Barnes broke the all-time Premiership appearances record (191) for a referee while officiating Worcester Warriors 23-8 victory over London Irish.
Barnes was selected to officiate at his fourth Rugby World Cup in Japan was tipped to referee the final after missing out on the semi-finals but England reaching the final prevented him from doing so.