Group E winners England will face Sri Lanka, the Group F runners-up at the Beausejour Stadium here on Thursday. Meanwhile Group F winners Australia will play Group E runners-up and defending champions Pakistan at the same ground here on Friday.
Australia knocked hosts the West Indies out and kept alive the possibility of an Anglo-Australian final with a dominating six-wicket win.
West Indies, in a match they had to win by 24 runs to reach the semi-finals were bowled out for just 105 at the Beausejour Stadium on Tuesday.
Australia, in reply, lost two wickets on 31.
But Brad Haddin (42) saw Australia to the verge of victory before he got out with two runs needed to West Indies captain Chris Gayle.
The occasional off-spinner then ended the match with a ball that went for five wides, a delivery that summed up his team´s performance on the day.
Australia, who finished on 109 for four, won with 22 balls to spare.
Their win ensured Sri Lanka, last year´s losing finalists, also went through to the semi-finals as Group F runners-up.
England will play Sri Lanka, who earlier Tuesday knocked out India with a five-wicket win, in the first semi-final here on Thursday.
The second semi-final will see Australia playing defending champions Pakistan, also at Beausejour, on Friday.
The final takes place at Barbados´s Kensington Oval on Sunday.
Victory meant Australia remained unbeaten at the tournament and captain Michael Clarke said: "Hopefully we can come out and continue this momentum.
"We want to play positive, aggressive cricket, and our fielding standards have been high."
Gayle added: "We lost too many wickets at the top. Australia are playing good cricket. I wish them all the best."
West Indies, who saw Gayle win the toss, suffered a dramatic collapse.
From the relative safety of 52 for two, they lost their next five wickets for 25 runs as they slumped to 77 for five.
Only Ramnaresh Sarwan (26) and Shivnarine Chanderpaul (24) made it past 20.
Australia leg-spinner Steven Smith, the man-of-the-match, took two wickets in two balls on his way to figures of three wickets for 20 runs as West Indies failed to sparkle under the Beausejour floodlights.
West Indies´ star batsman Gayle was out second ball, clean bowled by left-arm quick Dirk Nannes, the tournament´s leading wicket-taker.
Then the experienced Chanderpaul, having flicked Mitchell Johnson´s second and fifth balls for four was out to the left-arm quick´s sixth.
The left-handed batsman launched Johnson high over the bowler´s head but didn´t quite time his shot and David Hussey, running back from mid-on, took a superbly judged catch.
The slump really took hold in unlucky fashion when all-rounder Dwayne Bravo (six) was run out, backing up, after Johnson touched a Sarwan drive onto the stumps at the bowler´s end.
Smith then got in on the act as recalled batsman Narsingh Deonarine holed out for a duck, caught by Michael Hussey at deep midwicket.
And he followed up with two wickets in two balls.
Kieron Pollard (13) tried to work the ball legside but was beaten by the turn and wicketkeeper Haddin completed a neat stumping.
Next ball Darren Sammy, in front of his St Lucia home crowd, chipped a simple return catch back to Smith. Jerome Taylor survived the hat-trick.
Sarwan, the last of the specialist batsmen, tried to clear long-off but simply holed out off part-time spinner David Hussey to David Warner.
In reply, Warner made a typically brisk 25 off 12 balls before he edged paceman Taylor to Gayle at slip.
And next ball 31 for one became 31 for two when Watson gloved an intended sweep off left-arm spinner Benn onto his stumps.
Clarke helped Haddin add 47 for the third wicket before he was brilliantly run out by Bravo, after an athletic stop and direct hit from short third man.
But that was an all too rare highlight for the West Indies.
SRI LANKA BEAT INDIA
Earlier in the day, Sri Lanka took a huge stride towards the World Twenty20 semi-finals with a five-wicket win over India that knocked their Asian rivals out of the tournament on Tuesday.
Chamara Kapugedera´s six off the final ball saw Sri Lanka to a dramatic win after man-of-the-match Angelo Mathews and captain Kumar Sangakkara both made 46 to revive the innings from the depths of a top-order collapse.
India - who lost all their Super Eights matches - had to win by at least 20 runs to keep their own slim semi-final hopes alive.
Having made 5-163, that meant restricting Sri Lanka to 143 or less.
But their hopes of doing so ended when Chamara Kapugedera struck a Vinay Kumar full toss for six off the penultimate ball of the 19th over.
Kapugedara repeated the dose next ball and Sri Lanka needed 13 to win off the last over.
Mathews put them in sight by smashing the first ball of the 20th over, from left-arm quick Ashish Nehra for six.
But he was run out off the fifth ball going for a tight single by bowler Nehra´s direct hit, having faced 37 balls with three sixes and two fours.
However, with three needed off the last ball, Kapugedera carved Nehra over cover for six to finish on 37 not out.
Suresh Raina top scored with 63 for India on the ground where he made a century against South Africa earlier in the tournament.
India were well-placed for a big score at 90 for one at the halfway stage but Sri Lanka, led by unorthodox quick Lasith Malinga (2-25), restricted them to just 73 runs from the second 10 overs.
Foreign Minister Paudyal discusses connectivity issue with Sri...