The army bandsman beat singer Wayne Woodward in the public vote during Saturday night's final.
Richard's winning performance told the story of Britain's oldest living magician, Fergus Anckorn, who was also a prisoner of war in World War Two.
"It's unbelievable. Thank you so much," he said. "It's an incredible feeling. I want to thank everyone here and everyone at home watching."
Richard gets Â£250,000 prize money and the chance to appear at the Royal Variety Performance.
Third place went to dance group Boogie Storm, a team of dancing Star Wars Stormtroopers.
The final had a special performance to mark BGT's 10th anniversary, which featured previous winners including Diversity, George Sampson and Ashleigh and Pudsey.
Richard Jones has become the first ever magician to win Britain's Got Talent.