Batting first in the first semi-final, Sri Lanka put up an impressive 160 for six, riding on important contributions from Angelo Mathews (40) and Lahiru Thirimanne (45).
In reply, the West Indies were 80 for four in 13.5 overs when heavy rain, accompanied by hailstones, forced play to be abandoned.
The Duckworth-Lewis par score when play was halted was 107, and the West Indies were well short of the target, struggling at 80 for four in 13.5 overs.
There was certainly no 'Gayle-storm', but the 15-minute Kalboisakhi (Nor’Westers), as they call the thunderstorms in Bangladesh, turned the ground into a lake. Umpires Richard Kettleborough and Rod Tucker had to wait as per rules before Sri Lanka were adjudged winners.
The Lankans, though, were deserving winners considering that the West Indies were never in the hunt during their chase, except the first over.
Dwayne Smith (17) made his intentions clear off the first two balls bowled by Nuwan Kulasekara, lofting him for a boundary and a six respectively as 17 came from the first over.
Chris Gayle (3) looked out of touch and looked shaky, having been hit on the shinbone while fielding. After scratching around for a dozen deliveries, he played a Lasith Malinga slower delivery onto his stumps.
The skipper then bowled another slow off-break that breached through Smith's defence.
After their stand-in captain provided twin breakthroughs, the rejuvenated Lankans stemmed the flow of runs with tight bowling.
Lendl Simons (4) was done in by a flipper from leg-spinner Seekkuge Prasanna and was caught plumb on the back-foot.
The West Indies were struggling at 34 for three at the start of the eighth over.
Marlon Samuels's struggle on the slow Mirpur track continued as he simply failed to get going against Rangana Herath and Prasanna. His first positive shot was an uppish cover drive off Herath.
Dwayne Bravo (30) got his first six in the same over off Herath, lofting him over extra-cover, but it proved to be his only big hit of the match as he mistimed a pull shot for Mahela Jayawardene to take a nice catch running from his deep square leg position.
The target was very difficult, but with skipper Darren Sammy coming in the West Indies still had hope since he did it against Australia. However, the thundershowers intervened and sealed their fate.
Earlier, Sri Lanka go a flying start from openers Kusal Perera and Tillakaratne Dilshan, who together got 32 runs off the first three overs.
It was one such day when opening bowlers Santokie (2-46 in four overs) and Samuel Badree (1-23 in four overs) did not get their length right in the initial overs.
After an uppishly driven boundary by Dilshan off Badree past mid-off, young Kusal Perera (26) got stuck into Santokie, hitting him for two boundaries in the second over.
The first was a swing past deep fine leg while the second was picked from outside the off-stump and hit over mid-wicket.
In Badree's next over, both Dilshan and Perera used their feet and hit the leggie for a six each.
Perera looked in great touch as he dispatched a Santokie length ball over long-on for his second six, as 41 runs were added in 3.5 overs before the left-arm seamer got lucky. It was an ordinary delivery that was short on length and Perera only managed to chop it on to the stumps.
Jayawardene was unlucky as Dilshan misjudjed a run and Darren Sammy's throw from point caught the non-striker a foot off the crease.
With two quick wickets after the initial blast, Sammy quickly changed Badree's bowling end and it yielded results immediately. The latter flighted one and new-man Kumar Sangakkara couldn't reach to pitch of the delivery while committing a drive and presented the bowler an easy return catch.
From 41 in four overs, the next six produced only 24 runs and Sri Lanka also lost two wickets in the process.
Thirimanne showed positive intent from the onset as Dilshan became an increasingly silent partner in their 42-run fifth-wicket partnership.
The latter couldn't convert his start as he was run-out in pursuit of another adventurous single, playing the ball towards mid-off. The single was non-existent and he was rightly sent back his partner, Thirimanne, but he couldn't beat the direct throw.
Dilshan's run-a-ball 39 had two fours and a six.
Thirmanne hit a couple of sixes in his 35-ball 44 but failed to pick a slower one from Santokie, slashing it straight to point.
Image: Lasith Malinga (second from right) celebrates with teammates after dismissing West Indies opener Chris Gayle.
Photograph: Gareth Copley/Getty Images
World T20: Amla will do 'what the team needs' against India
WT20 PHOTOS: Five-star Herath spins Sri Lanka into semis
India take No 1 ranking after unbeaten WT20 run
PHOTOS: Hales heroics spark brilliant England victory
WT20 snapshots: Yuvraj has long stint at nets