Surrey 208 for 1 (Roy 122*) beat Somerset 170 for 7 (Hildreth 51) by 38 runs
Jason Roy smashed an unbeaten 122 off 64 balls, in front of a near sell-out crowd of more than 20,000 at the Kia Oval, to condemn Somerset to their fourth successive defeat in the NatWest T20 Blast and keep alive Surrey's hopes of reaching the quarter-finals.
Roy took centre stage as the hosts racked up 208 for one after winning the toss, and the 24-year-old's spectacular second hundred in this format included six sixes and eight fours.
Such was the savagery of Roy's onslaught that it overshadowed Rory Burns's unbeaten 46 off 33 balls in an unbroken second-wicket partnership of 124 in eleven overs.
Somerset could only manage 170 for seven off their 20 overs in reply, with James Hildreth contributing 51 from 43 deliveries, as Surrey won by 38 runs.
Kumar Sangakkara also helped to set the tone for Surrey by joining forces with Roy in an opening stand of 84 in nine overs. Other than when Roy, on 18, was dropped by Jamie Overton on the straight boundary, the Surrey openers raced along without undue risk.
Sangakkara brought the fifty up for Surrey in the sixth over, with a pulled four off Alfonso Thomas. The Sri Lankan survived a difficult chance at extra cover, on 28, off Lewis Gregory, though not before being caught at mid-on off a delivery that was no-balled for being above waist height.
Sangakkara was stumped off Max Waller for 31, after which Roy, who faced just 32 balls for his fifty, slammed his foot on the accelerator by launching Jim Allenby over long off for six.
The 14th over of Surrey's innings proved to be eventful with Burns swinging Allenby over wide long on for a maximum, Roy taking full advantage of a free hit and Jamie Overton spilling another catch in the deep, this time to the relief of Burns.
Roy went to a 56-ball hundred with his fourth six, straight down the ground off Overton and, just for good measure, swung two of the last three balls of the Surrey innings into the crowd at mid wicket.
Somerset's reply got off to the worst start possible when Johann Myburgh, attempting to profit from a mis-field at mid-off, was run out by Sam Curran without scoring.
Zafar Ansari, at extra cover, then parried at fierce shot from Allenby to cling on at the second attempt before Peter Trego, having just thumped a straight six, was caught at short fine leg for 26.
If they did not know it before, Ansari confirmed it was not to be Somerset's night by running in fully 40 yards from the mid wicket boundary to pull off an astonishing one-handed catch to see the back of Tom Cooper for 29.
Like Trego, Luke Ronchi (21 off 13 balls) threatened briefly to defy the odds by swinging both Azhar Mahmood and Tom Curran over long on for sixes, but when the New Zealand international holed-out to long off the visitors' already slim chances went with him.