|ICC World Twenty20 Super 10s, Group 1, Nagpur|
|Afghanistan 123-7 (20 overs): Najib 48, Badree 3-14, Russell 2-23|
|West Indies 117-8 (20 overs): Bravo 28, Rashid 2-26, Nabi 2-26|
|Afghanistan won by six runs|
|Scorecard and standings|
West Indies set up a semi-final with Australia or India despite suffering a shock six-run defeat by Afghanistan.
Batting first, Afghanistan recovered from 56-5 to post 123-7, with Najib Zadran hitting a composed unbeaten 48.
West Indies, who had won their first three matches, slumped from 79-3 to 117-8 to hand Afghanistan their biggest ever win, but still top Group 1.
The result confirms that England will play New Zealand in Delhi on Wednesday in their semi-final.
West Indies - who rested Chris Gayle for this game - will play their semi-final in Mumbai on Thursday.
Afghanistan return home having lost their first three games at this stage, but they will be buoyed by their first ever victory over a Test-playing side other than Bangladesh or Zimbabwe.
Afghanistan claim their biggest scalp
It was a fully deserved win for Asghar Stanikzai's side, who had given South Africa and England major scares in their two previous matches.
They had failed to capitalise on reducing England to 56-6, but this was initially a much less promising performance as they lost early wickets to the spin of Samuel Badree and Sulieman Benn.
However, from 76-5 after 15 overs, they came to life, with Zadran swatting four fours and a six to give them something to bowl at.
On the same Nagpur pitch where New Zealand defended 126 against India, Afghanistan - playing four spinners - were always in the game.
After three early wickets, a partnership of 41 between Dwayne Bravo and Denesh Ramdin seemed to have rescued West Indies, but when Ramdin was out stumped, Afghanistan seized their chances, with Mohammed Nabi taking two wickets and bowling a nerveless final over to seal victory.
However, with only 10 teams due to participate at the 2019 World Cup, this could be the last we see of Afghanistan in a major tournament for some time.
Batting worries for West Indies
The West Indies advance to the last four for the third World Twenty20 in a row, but they will have major concerns after another brittle performance by their batting line-up.
Having only narrowly chased 123 against South Africa, this time they came unstuck, with only Dwayne Bravo (26) and Johnson Charles (22) passing 20 as five wickets fell to spin.
Carlos Brathwaite hit two sixes to give them hope, but with 10 required off the final over, he was brilliantly caught by Najib at cow corner.
To add to the West Indies' worries, Andre Fletcher - who hit 84 not out against Sri Lanka - retired hurt and would seem to be a major fitness doubt for the semi-final.
But Darren Sammy's side will be confident in their bowling, which was once again excellent, with Badree's 3-14 the standout performance.
What they said
Afghanistan captain Asghar Stanikzai: "Winning this match is very important. We needed one win in this tournament after missing two good chances to get one.
"Today the guys played really well. We thought we might be short 15 runs or so, but we still bowled very well and fielded very well, Najib especially."
West Indies captain Darren Sammy: "We're disappointed, but we're not going to let it dampen our spirits. They played well and we need to find a way to chase down those small totals.
"We have a semi-final and we're looking forward to that. We've done the most important part, which is getting through to the last four.
"We were just looking to win the match. It would have been good to win all four, but we understand that this was the only one we could afford to lose in terms of winning the trophy."