Bangladesh, chasing 285 to win in Dhaka, were bowled out for a paltry 78 in the 28th over, the third lowest World Cup total of all time, with only skipper Shakib Al Hasan (30) getting to double figures.
The Tigers, who had high hopes of making the last eight after playing all their Group B matches in favourable home conditions, finished on six points, the same as West Indies, who have a vastly superior run-rate.
South Africa, with 10 points, finished top of the pool, with India and England on seven points.
Only a mathematical miracle in the India-West Indies match on Sunday would throw Bangladesh an unlikely lifeline.
"Sorry," was Shakib's message to the millions of fans in the country who had expected better from a team who had even been bowled out for just 58 by the West Indies earlier in the tournament.
"We missed a big opportunity because we have been performing for the last 12 months and we thought we would have a very good opportunity to qualify for the second round."
Lonwabo Tsotsobe grabbed 3-14 on his World Cup debut and spinner Robin Peterson claimed 4-12 to star with the ball after Jacques Kallis had made 69 and Faf du Plessis hit a run-a-ball 52 to lift South Africa to 284-8.
Hashim Amla (51) and skipper Graeme Smith (45) were also in the runs.
Tsotsobe, who was given a chance only because pace spearheads Dale Steyn and Morne Morkel were rested ahead of the bigger matches, seized the opportunity in style.
The 27-year-old left-arm seamer silenced a sell-out crowd of 25,000 at the Sher-e-Bangla stadium when he had Bangladesh's main batting hope, Tamim Iqbal, caught behind for five in his second over and the home side never recovered.
"We gave a few guys an extra couple of days to rest but it was fantastic to see other guys that came in, the motivation they had and the way they performed. That's always exciting to see," said Smith.
Defending champions Australia tackle Pakistan in Colombo in Saturday's late match where the winner will be assured top spot in Group A.
Both sides, as well as Sri Lanka and New Zealand, have already made it to the last eight.
But Australia are defending a 34-match unbeaten run in World Cups, a streak stretching back to 1999 when they lost by 10 runs to Pakistan in Leeds.
On Friday, Sri Lanka saw off New Zealand by 112 runs in Mumbai with skipper Kumar Sangakkara hailing veteran spinner Muttiah Muralitharan as a legend for his four-wicket contribution.
Muralitharan, playing in his final World Cup before retirement, took 4-25 as the Black Caps were dismissed for 153.
But he had battled through the pain of a pulled hamstring which he suffered as he dived into his crease, trying to avoid being run out when his team batted.
"Murali is a legend to bowl virtually on one leg and still get wickets," said Sangakkara, who was man of the match for his 111 runs.
The skipper said he was confident that Muralitharan would be fit for their quarter-final which Sri Lanka will hope to be in Colombo on March 26.
"Murali needs to play. He needs to have the freedom to do as he pleases. He needs to bowl and get wickets," said the captain.