The arrival of Smith marks a major coup for the county, who have made him their new captain, and the 31-year-old opening batsman is eager to get started at the club.
“I am excited to be joining such a professional and talented team, during what will hopefully prove to be a rewarding and successful period for Surrey CCC,” said Smith, who played his 100th Test over the summer against England.
“I am excited about what we can achieve at Surrey going forward and would like to state very clearly that I will balance my new role alongside my continuing commitments to the Proteas.
“I look forward to continuing to represent my country for many years to come.”
The left-handed batsman will join up with Surrey in March after South Africa’s series against Pakistan.
Smith is the county’s third quality signing along with left-arm spinner Gary Keedy and batsman Vikram Solanki since the end of last season.
The trio will add to superb blend of youth and experience, which has been recruited by the south London side.
“When you consider the ambition shown it was an easy decision for myself and my family and I would like to thank Surrey County Cricket Club and Cricket South Africa for giving me the opportunity to lead the side and make it possible,” added Smith.
Smith last played county cricket for Somerset in 2005 and Surrey team director Chris Adams admitted he was thrilled to sign the South African.
“Signing Graeme Smith on a three-year deal is a massive coup for Surrey CCC,” said Adams.
“As well as being one of the best captains in the modern game, he is a phenomenal opening batsman and will lead by example from the top of the innings.”
MORE: The latest football news
MORE: The latest tennis news
BIOGRAPHY: Marcus Rashford