[6] On 7 October 2017, Karunaratne became the second Sri Lankan opener after Tillakaratne Dilshan to score three Test centuries in a calendar year.
In February 2019, he was named as the captain of Sri Lanka's Test squad for their series against South Africa.
[10] Karunaratne attended the St Joseph's College Colombo, which has produced a number of Sri Lankan Test cricketers such as Angelo Mathews and Chaminda Vaas.
[11] After featuring in Sri Lanka's Under-19 and A squads, he was called into the senior One Day International (ODI) team for the series against England and Scotland in June and July 2011.
[17] In February 2019, Karunaratne signed for Hampshire County Cricket Club as their overseas player for the first half of the 2019 season.
His knock helped to chase down 218 run target and guide towards an eight wicket victory for the Colombo team.
However, he came back strongly in the second innings with an unbeaten half century as well as hitting the winning runs.
He scored 152 runs from 363 balls in the second match of the series, when Sri Lanka were in deep trouble.
Just as Dimuth's first Test century was in a losing cause, his second proved to be the same: Sri Lanka lost the match by 7 wickets.
[23][24] This strong comeback gave cause for Karunaratne to be named to the Test team for the Zimbabwe tour in late October 2016.
[25] With impressive bowling by skipper Rangana Herath, Sri Lanka won the match by 257 runs, and whitewashed the series 2–0.
[28] Sri Lanka played their first day-night Test on 6 October 2017 at the Dubai International Cricket Stadium against Pakistan.
With the help of the bowling unit, Sri Lanka won the match by 68 runs after a thrilling finish on the fifth day.
[37] He scored unbeaten 158 runs, and became the fourth batsman for Sri Lanka to carry his bat in Tests after Sidath Wettimuny, Marvan Atapattu and Russell Arnold.
[39] Sri Lanka won the match within three day, where South Africa was dismissed to their lowest team total since readmission.
[46][47][48] During the second Test at Canberra, suffered a blow to the back of the neck when he failed to get out of the way of a 142 km/h Pat Cummins bouncer.
Next day, after Kusal Perera was injured by another bouncer from Jhye Richardson,[50] Karunaratne came to the field to play his innings.
Karunaratne was named as the stand-in captain for the tour, while Chandimal was released to play domestic cricket and regain his form with the bat.
[54] Under his captaincy, Sri Lanka won the match by 1 wicket courtesy of Kusal Perera's unbeaten century.
[55] In the match, during South Africa's first innings, an apparent DRS timing error cost Sri Lanka a wicket of Hashim Amla.
[59] In March 2019, Karunaratne was arrested over a drink-drive incident in Colombo, which injured another motorist, and was later released on bail.
[69] This stand ranks as only the second instance where fourth innings of a Test match in Asia scored more than 150 run opening partnership.
He is the third Sri Lankan opener to score a century in fourth innings after Kusal Mendis and Sanath Jayasuriya.
[75][76] In February 2021, Karunaratne was named in Sri Lanka's Twenty20 International (T20I) squad for their series against the West Indies.
[83] The pair Karunaratne and Lahiru Thirimanne added 209 runs, Sri Lanka's first 200-plus opening stand since 2011, and the first in the country in 21 years.
[96] In the Australian Test series in July 2022, Sri Lanka suffered a huge defeat under Karunaratne, where the match ended in three days.
[97] However on 9 July 2022, he scored 86 runs in a partnership of 152 with Kusal Mendis to make a solid foundation in the first innings of the second Test against Australia.
[106] Due to his performances Karunaratne selected to Wisden’s World Test Championship XI :WTC 2021-2023.
[114] On 7 July 2023, qualifier match against West Indies, Karunaratne scored his 11th ODI half century.
Despite playing just six matches in the year, Dimuth Karunaratne secures a spot in the team with memorable outings throughout 2023 in Tests having amassed 608 runs at an average of 60.8.