Sri Lanka lost 16 wickets on the third day as India go 1-0 in the series.
Ravindra Jadeja also shone with the ball after smashing 175*, picking up 9 wickets in the match.
Sri Lanka was bowled out, unable to even cross the 200 run mark in both the innings and suffered an embarrassing innings defeat in their 300th international Test match.
India 1st innings 574-8
Jadeja 175*( 228) Lakmal 2-90 R. Pant 96 (97) Fernando 2-135 Vihari 58 (128) Embuldeniya 2-107
Sri Lanka 1st innings 174 all-out
Nissanka 61*(133) Jadeja 5-41 Asalanka 29 (64) Ashwin 2-49 Karunaratne 28 (71) Bumrah 2-36
Sri Lanka 2nd innings 178 all-out
Dickwella 51*(81) Jadeja 4-46 de Silva 30 (58) Ashwin 4-47 Mathews 28 (75) Shami 2-48
Rohit Sharma has registered a victory in his debut match as a skipper.
He is only the second Indian skipper to win his debut captaincy match by an innings.
Virat Kohli was unable to score his 71st International hundred in his 100th Test match but this was a great win for the men in blue.
Sri Lanka was bowled out on just 174 runs in the first match after starting the innings from their overnight score of 108-4.
Ravindra Jadeja claimed a brilliant fifer while Ashwin and Bumrah picked up 2 wickets each.
India forced the follow-on and Sri Lanka came to bat again but the story remained the same as they were bowled out for just 178 runs in their second innings.
The experienced Ravichandran Ashwin got an early breakthrough by dismissing Lahiru Thiramane for a duck in the third over.
Ashwin took only 3 overs to grab his second scalp as he dismissed the top-scorer for Sri Lanka in the first innings- Pathum Nissanka for only 6 runs.
Mohammed Shami who remained wicketless in the first innings picked the important wicket of the Sri Lankan skipper Dimuth Karunaratne on 27 runs and the Lankan tigers were again struggling on 45-3.
Dhananjaya de Silva and Angelo Mathews got off to good starts but they failed to convert their good scores into a big innings as Ravindra Jadeja get rid of both of them for 30 and 28 runs respectively.
Jadeja dismissed Mathews and Lakmal in the same over.
Charith Asalanka played a quick little cameo including 2 fours and 2 sixes but Ashwin didn’t allow him to do much damage and sent him back to the pavilion on 20 runs off just 9 balls.
Niroshan Dickwella was the leading run-scorer for Sri Lanka in the second innings as he scored a half-century.
Dickwella smacked 9 fours in his knock and remained not-out on 51 runs.
But Sri Lanka was all-out on 178 runs, adding only 4 runs into their 1stinnings total, and suffered an innings defeat by 222 runs.
The two spinners Ashwin and Jadeja were the stars for India with the bowl as both of them claimed a 4-for while Shami managed to pick two wickets in the second innings.
Ravindra Jadeja’s supremacy
Rohit wins his debut red-ball captaincy match and Virat Kohli played his 100th Test but this match will be remembered due to Ravindra Jadeja’s mind-blowing performance.
He was the star for India both with the bat and ball.
Jadeja smashed an unbeaten 175 runs with the bat and he picked up a fifer in the first and 4 in the second innings.
Jadeja also became the first player in almost 50 years to score a 150 and also pick a five-wicket haul in the same match.