Jos Buttler clubbed 72 not out as Somerset beat Gloucestershire by 15 runs to press their claims for a quarter-final spot in the Friends Life t20.
Buttler's 72 came off 45 balls and, along with Kieron Pollard's unbeaten 31-run blitz it helped the hosts get up to 170-4 as they batted first at Taunton.
Gloucestershire were going well in reply on 114-2 after 14 overs, Kevin O'Brien having made 34. But Hamish Marshall fell for 54 in the closing overs as the visitors collapsed to 155-9 with Murali Kartik taking 2-16.
A sell-out crowd saw the home side slip to 40-3 after losing the toss before Buttler, who hit three sixes and seven fours, added 57 in 7.4 overs with James Hildreth who made 34.
Buttler and Hildreth had been content to milk singles and twos as they launched Somerset's recovery, but once Hildreth was caught behind off Jack Taylor, having faced 35 balls, Buttler went on the attack in devastating style.
The 20-year-old has not been in the best of form this season, but that did not show as he struck the ball sweetly.
Pollard would have been run out when he had made only a single had wicketkeeper Richard Coughtrie not dislodged the stumps before Hamish Marshall's throw reached him.
The big West Indian went on to strike one ball from Muttiah Muralitharan into the River Tone with a massive six over long on, to the delight of a sell-out 7,000 crowd who were able to celebrate a home success.
David Payne, who dismissed Marcus Trescothick second ball, was the pick of the Gladiators bowlers with 2-27.
In reply, Gloucestershire were going well on 114 for two after 14 overs, Kevin O'Brien having made 34. But Hamish Marshall fell for 54 in the closing overs as the visitors collapsed to 155-9.
O'Brien and Marshall had put on 51 for the first wicket in just five overs.
O'Brien hit five fours and a six in facing just 18 balls, while Marshall went on to face 44 deliveries, hitting five fours.
It was spinners Kartik and Arul Suppiah, who took 1-21, who swung the game Somerset's way, both extracting plenty of turn from the pitch.
Pollard did his bit with 3-25 from his four overs, while Lewis Gregory claimed 2-35 and was responsible for three catches and a run out.