South Africa are desperate for a win to stay alive in the competition after three defeats in their three matches, while West Indies will be looking to bounce back from a loss to Australia last week after a good opening win against Pakistan.
Both sides made two changes.
South Africa brought in batsman Aiden Markram for JP Duminy and left-arm seamer Beuran Hendricks, who replaced injured fast bowler Dale Steyn in the squad, makes his first start of the tournament, coming in for Tabraiz Shamsi.
Darren Bravo comes in for the West Indies to replace injured opener Evin Lewis. And seamer Kemar Roach is included in place of injured all-rounder Andre Russell.
“We are going to field first, obviously it is overcast and there is some rain around,” said Holder.
“We have reflected on the defeat to Australia which hurt us deeply but we have to move on. Take the learning out of it and make amends.
“We have to do the basics better, the batters have to take more responsibility.”
South Africa captain Faf du Plessis said he would have liked to bowl first.
“You would assume that the whole game will be played in overcast conditions,” he said.
“We have played two of the strongest teams. It’s a six-week tournament and if you can turn that momentum around, you can ride it. It’s about not focusing on the negatives.”
West Indies: Chris Gayle, Darren Bravo, Shai Hope (wkt), Nicholas Pooran, Shimron Hetmyer, Jason Holder (capt), Carlos Brathwaite, Ashley Nurse, Kemar Roach, Sheldon Cottrell, Oshane Thomas
South Africa: Quinton de Kock (wkt), Hashim Amla, Faf du Plessis (capt), Aiden Markram, Rassie van der Dussen, David Miller, Andile Phehlukwayo, Chris Morris, Kagiso Rabada, Beuran Hendricks, Imran Tahir
Umpires: Rod Tucker (Australia) Paul Wilson (Australia
TV umpire: Sundaram Ravi (IND)
Match Referee: David Boon (AUS)