The off-spinner began his career in his native Yorkshire before moving to Surrey, first playing for the county in 1999.
He departed for Worcestershire in 2002 but returned to the Oval in 2010 and since then he has been a key player for Surrey.
He has stepped in as captain several times before, notably last season when Graeme Smith was injured.
Surrey???s Director of Cricket Alec Stewart said: ???Gareth is a very honest man, of fine character and a good leader. He has the respect of the dressing room and the club is proud to have him.
???It is a huge honour to be appointed the captain of Surrey County Cricket Club and we have every confidence that he will lead the team forward.???