A late flourish from captain Jason Holder and Nicholas Pooran helped West Indies set Afghanistan a daunting 312 to win on Thursday as they seek a morale-boosting victory after a poor World Cup campaign.
The Caribbean side began the tournament with a comprehensive seven-wicket win against Pakistan and many tipped them as dark horses for the title, with a power-packed batting line-up and fearsome pace attack.
But the two-time champions have not won a single match since then and sit second from bottom of the 10-team table, with only Afghanistan below them.
Holder won the toss and decided to bat in the Leeds sunshine but the West Indies soon lost Chris Gayle, caught behind after a slash against Dawlat Zadran for just seven in what is almost certain to be his final World Cup innings.
Gayle's dismissal means the 39-year-old is 10 runs short of Brian Lara's all-time West Indian record of 10,348 one-day international runs, though he has indicated he is not yet hanging up his boots.
Evin Lewis (58) and Shai Hope (77) came together and put on 88 for the second wicket before they were separated in the 25th over.
But Pooran picked up where he left off against Sri Lanka, hitting 58 to add to his century in a losing cause earlier this week, and Holder smashed a quickfire 45.
Carlos Brathwaite lashed 14 off four balls as West Indies ended their 50 overs on 311-6.
Highly rated leg-spinner Rashid Khan ended the tournament with just six wickets after taking 1-52 on Thursday.
Afghanistan, playing in only their second World Cup, have endured a miserable tournament, losing all eight of their matches so far.
West Indies 147-2 off 30 overs vs Afghanistan
West Indies is 147-2 after 30 overs against Afghanistan.
Shai Hope is on 50 - his third half-century at this World Cup - and Shimron Hetmyer is on 29 off 19 balls.
Evin Lewis was the second batsman to depart, holing out to Mohammad Nabi in the deep off Rashid Khan for 58.
West Indies bat against Afghanistan in World Cup match
West Indies won the toss and chose to bat against Afghanistan on Thursday in the final World Cup match for both sides, neither of whom have qualified for the semi-finals.
The teams have mustered just a single win between them in 16 games, with West Indies ninth in the 10-team table and Afghanistan rock bottom after eight straight defeats.
The West Indies, World Cup winners in 1975 and 1979, brought in Evin Lewis for Sunil Ambris and Kemar Roach for Shannon Gabriel for the match at Headingley.
Afghanistan give a chance to Sayed Shirzad and Dawlat Zadran in place of Hamid Hassan and Hashmatullah Shahidi.
West Indies captain Jason Holder said: "We're going to bat first, it seems to be a good wicket. The wickets tend to slow up as the game goes on so hopefully that happens today.
"We can't do anything about what's gone before but we have to make sure we end the tournament well."
Afghanistan captain Gulbadin Naib said he would also have chosen to bat first.
Afghanistan: Gulbadin Naib (capt), Rahmat Shah, Ikram Alikhil (wkt), Asghar Afghan, Mohammad Nabi, Najibullah Zadran, Samiullah Shinwari, Rashid Khan, Mujeeb Ur Rahman, Dawlat Zadran, Sayed Shirzad
West Indies: Jason Holder (capt), Chris Gayle, Evin Harris, Shai Hope (wkt), Shimron Hetmyer, Nicholas Pooran, Carlos Brathwaite, Fabian Allen, Kemar Roach, Sheldon Cottrell, Oshane Thomas
Umpires: Nigel Llong (ENG), Chris Gaffaney (NZL)
TV umpire: Ian Gould (ENG)
Match referee: Chris Broad (ENG)