Somerset 189 for 3 (Trego 84*, Myburgh 58, Hildreth 39*) beat Hampshire 91 (van der Merwe 3-13, C Overton 3-17) by 98
Peter Trego and Johann Myburgh crashed stylish half-centuries to earn Somerset a quarter-final place as they thrashed Hampshire by 98 runs.
The visitors, who were part of a cluster of sides on 12 points in the South Group ahead of the game, needed to win and wait to see how the net run-rates settled.
And after Somerset bowled Hampshire out for 91 with eight balls to spare they were forced to wait until Glamorgan's clash with Middlesex finished to have their place confirmed.
Hampshire were already through to the knockout stage and also avoided their previous worst T20 total of 85, but the defeat was their heaviest defeat in the format while batting second.
Somerset won the toss and batted on a quicker and flatter than usual pitch at the Ageas Bowl.
Liam Dawson took a wicket in his first over for the third game in a row when he had Steven Davies caught behind to the fourth ball of the innings.
Jim Allenby then skied to Gareth Berg on the midwicket boundary to hand Hampshire their second power-play wicket as the visitors reached 54 for 2 in the first six overs. But from that point Somerset clattered runs with increasing ease.
Myburgh smacked Dawson for a pair of maximums over mid-wicket before carting Kyle Abbott over long-off.
He reached a 22-ball half-century, his third of the campaign, but prodded debutant Jake Lintott to point - the left-arm unorthodox bowler striking with his second ball in professional cricket.
Peter Trego and James Hildreth then batted Hampshire out the game with a well-paced 105-run partnership, missing out their all-time T20 best stand for the fourth wicket by a run.
Neither batsman appeared in discomfort at any point nor did they demean themselves to slogging, instead they ran hard on a large boundary.
Trego, who reached his fifty in a more sedate 38-balls, did pick the gaps well as his 84 bore nine fours and two sixes, while Hildreth only scored a pair of fours in his 39. But the partnership raised Somerset to 189, before Hampshire's reply never got going.
Calvin Dickinson failed to repeat his lusty blows against Kent last week, where he crashed a quick fire fifty, as he was bowled while backing away by Max Waller in the first over.
Skipper James Vince and George Bailey then departed in the next over - the former caught at cover, the latter at mid-off - as the hosts were left on 10 for 3.
Dawson was bowled before Tom Alsop, who had been ticking along nicely for 36, was well caught by Roelof van der Merwe on the long off rope.
Sean Ervine quickly followed back to the dug-out when he also holed out to long-on, Gareth Berg was stumped and Abbott was lbw.
Shahid Afridi offered a simple caught and bowled back to van der Merwe and Lintott edged behind ended Hampshire's sorry chase.