Gary Wilson smashed 85 off 62 balls to help Surrey seal a last-ball victory over Derbyshire in a run-fest of a YB40 Group B clash at The Oval.
The home side were set 295 for victory and they just edged home, despite losing Wilson in the final over after he was caught at short fine-leg.
Tom Jewell was also run out in the final over but with Surrey requiring two off the final delivery, Tim Linley drove Tim Groenewald down the ground to secure the win.
Chesney Hughes had top-scored for Derbyshire earlier in the day as he hit a run-a-ball 80, while Paul Borrington fired 72 off just 69 deliveries as Derbyshire scored 294-9 off their 40 overs.
Wes Durston also chipped in with some useful runs at the top of the order with 32 from 19 balls before lofting Zander de Bruyn (4-72) high to the wicketkeeper.
Hughes and Borrington kept up the run-rate though as they added 123 in 18 overs, Hughes moving to a 49-ball half-century in the 16th over before he was caught on the long-on fence by Tom Jewell off the bowling of Gary Keedy.
Borrington followed when he picked out Arun Harinath at short extra cover, with Shivnarine Chanderpaul (25) soon following.
Derbyshire continued to lose wickets at a steady rate, although a late rally from Tim Groenewald (27 off 13) saw them push on at end of their knock.
Surrey began their reply in promising fashion before Jason Roy (39) was trapped leg before by David Wainwright as he attempted a reverse sweep.
The slow left-armer pounced again to dismiss skipper Vikram Solanki for three but the hosts rallied and Arun Harinath reached his maiden one-day half-century.
But he departed just two balls later for 52, while De Bruyn helped himself to a quickfire 60 before becoming the first of Groenewald's (3-53) victims.
Rory Burns kept up the brisk pace with 29 from 15 before falling to Groenewald and despite the South African dismissing Wilson and Jewell also perishing, Surrey held their nerve to take a three-wicket win.