Announcing his decision on social media, the 38-year-old said he felt “bitter sweet but grateful”.
Steyn, often considered one of the best bowlers of his generation, made his Test debut in 2004 on home soil against England.
Formerly ranked as the world’s leading Test bowler, he took 439 wickets across his 93 Tests.
“It’s been 20 years of training, matches, travel, wins, losses, strapped feet, jet lag, joy, and brotherhood.”
Steyn played his final Test against Sri Lanka in 2019 before announcing his retirement from the five-day format in August that year to focus on limited-overs cricket.
He played for four County Championship sides – Essex, Warwickshire, Glamorgan and Hampshire – and in 2020, joined Kandy Tuskers in the Lanka Premier League.
Steyn was named ICC 2008 Test Cricketer of the Year and Wisden’s Leading Cricketer in the World in 2013 and was number one bowler in the ICC Test rankings for a record 263 weeks between 2008 and 2014. (BBC)