Mendis was adjudged the 2013 schoolboy cricketer of the year and had captained the national youth and the Prince of Wales College, Moratuwa teams in his formative years.
He was part of Sri Lanka's squad for the 2014 ICC Under-19 Cricket World Cup. He is the 132nd Test player for Sri Lanka, gaining his cap during the second Test of Sobers-Tissera Trophy. He made his Test debut in 2nd Test of West Indies tour of Sri Lanka 2015, scoring 13 runs in the first innings and 39 runs in second innings.
He was named in the Sri Lanka squad for the tour of England, and in the first Test he scored a duck in the first innings, but in the second innings he scored his maiden test half-century with 53 runs.
He made his One Day International (ODI) debut against Ireland on 16 June 2016, scoring his maiden ODI fifty. Mendis made his Twenty20 International (T20I) debut for Sri Lanka against England on 5 July 2016 in the same tour.
On 30 June 2017 against Zimbabwe, Mendis passed 1,000 ODI runs, becoming the joint second-fastest (with Tharanga) for Sri Lanka to achieve this.
On 28 July 2016, Mendis scored his maiden Test century during the first Test against Australia at the Pallekele Cricket Stadium. He became the youngest Sri Lankan to score a century against Australia and also the highest score against Australia on home soil. Sri Lanka won the match by 106 runs, which was only their second Test win against Australia. Mendis won the Man of the Match award for his performance.
In the fifth match of the Tri-series in Zimbabwe against the West Indies, Mendis scored 94 runs. With his fifty and 94 runs by Niroshan Dickwella, Sri Lanka posted 330 runs off 50 overs, which was recorded as the highest total by Sri Lanka against the West Indies. Sri Lanka won the match by single run and Mendis was adjudged man of the match for his batting. With this win Sri Lanka reached the final with Zimbabwe. In the final, Mendis scored another fifty, guiding the team to win the series by 6 wickets. His all-round performances in the series gave him his first player of the series award.
On the first Test against Bangladesh at Galle, Mendis scored his second Test century, just fall short 6 runs for his double hundred. His score of 194, before he was caught by Tamim Iqbal.
On 28 March 2017, in the second ODI against Bangladesh at Rangiri Dambulla International Stadium, Mendis scored his maiden ODI century, with 102 runs. However, the match ended as a no result, due to heavy rain.Dialog SLC Future Cricketer of the Year 2016.