Mushfiqur Rahim hit a blazing half-century to help Bangladesh chase down a record 215 and beat Sri Lanka by five wickets in the Nidahas Trophy T20 tri-series.
Mushfiqur smashed an unbeaten 72 off 35 balls as the visitors achieved their target with two balls to spare at the R Premadasa Stadium in Colombo.
Rahim, who hit five fours and four sixes, broke into a dance after giving Bangladesh their highest-ever run chase in the shortest format, and the fourth biggest overall in international T20s.
The wicketkeeper-batsman built crucial partnerships after openers Tamim Iqbal, who hit 47, and Liton Das, who made 43 off 19 balls, set up the chase with a brisk start.
Sri Lanka paceman Nuwan Pradeep (2-37) struck two crucial blows, including Liton's wicket, but Sri Lankan bowlers failed to stop the flow of runs from Mushfiqur, who was named man of the match.
Earlier, Sri Lanka opener Kusal Mendis (57) and Kusal Perera (74) put together 85 runs for the second wicket to help guide the hosts to 214-6, after being put into bat first.
Bangladesh skipper Mahmudullah (2-15) got Mendis out with his off-spin as he struck twice in his very first over to check Sri Lanka's surge.
But Perera continued to pulverise the Bangladesh attack to hit his second successive fifty, following one in their opening win over India.
The tournament, timed to commemorate the host island's 70 years of independence, stays alive with all three teams having won a game each. India take on Sri Lanka next on Monday.