Promoted to open the innings, Buttler gave Sri Lanka’s attack the runaround with four sixes and three fours in a 49-ball innings - his highest ever T20 score.
Liam Dawson, the debutant left-arm spinner, took 3 for 27, and Chris Jordan returned 3 for 29 as Sri Lanka was bundled out for 140 after opting to bat. Buttler shared a fluent unbroken 114-run third-wicket partnership with Eoin Morgan, who shrugged off a dislocated finger to score 47 not out, as England got to the target in 17.3 overs.
The defeat completed a disappointing tour for Sri Lanka, which failed to beat England in any of the nine international matches with the home side winning the Super Series 20-4.
England faltered early in its response, losing Jason Roy to the third ball of the innings, bowled round his legs by Angelo Mathews. James Vince, who came in at No. 3, became Mathews’ second victim when he was caught behind by Dinesh Chandimal for 16. But then, Buttler and Morgan stole the show.
Buttler survived an early scare when he survived a massive caught behind appeal off Mathews. But soon, he smashed the Sri Lankan skipper over long-on for a massive six, the first of the innings, and punched Farveez Maharoof down the ground for six before doing the same to Danuskha Gunathilaka’s spin.
Morgan, who was dropped by Mathews on eight and on 19 by Dasun Shanaka, too joined the party, hitting a straight six off Seekkuge Prasanna, the legspinner.
England further accelerated with Buttler reaching his half-century with a boundary off Chaminda Bandara, and he and Morgan saw the side home with considerable ease, Morgan smashing the winning runs with a six.
Sri Lanka never looked like posting an imposing total after winning the toss. Liam Plunkett drew first blood, forcing Kusal Perera to edge a miscued pull straight to Tymal Mills at fine-leg. Gunathilaka, the other opener, became Dawson’s maiden international wicket when he holed out to Chris Jordan for 26.
Kusal Mendis stubbed a Dawson delivery straight back to the bowler after scoring 21. Sri Lanka was still handlily placed at 79 for 3 after ten overs, but crumbled as it lost Mathews, bowled by Dawson for 11, and Shanaka, run out next ball.
Ramith Rambukwella hammered Adil Rashid for a six and then a four to bring up Sri Lanka's 100, eventually plundering 14 runs from the over, but was run out for 19 by Vince's direct hit. Plunkett then removed Prasanna for just one, caught behind by Buttler.
Jordan ensured Sri Lanka was kept to just 140, taking two wickets in the final over. Although England stuttered initially in its run chase, once Buttler applied the accelerator, the result was never in doubt.
For full scorecard of the match, click here.