Surrey 269 for 3 (David 140*) beat Warwickshire 268 for 9 (Steel 4-39, McKerr 4-64) by seven wickets
Tim David made a brilliant unbeaten 140 - his maiden one-day century - as Surrey kept their hopes of reaching the knockout stages of the Royal London Cup alive with a crushing seven-wicket win over Warwickshire at the Kia Oval.
The 25-year-old Singapore international, whose previous highest score in this season's competition was 13, launched a savage assault that brought him 11 sixes and nine fours as he raced to his hundred off just 55 balls.
It was the highest score in List A games between the teams, as Surrey overhauled a target of 269 with 10.3 overs to spare. Victory over Derbyshire in their final game on Thursday will secure their progress.
Warwickshire employed four spinners on the slow surface and Karl Carver, who had Ben Geddes caught at extra cover, and Rob Yates, who beat Mark Stoneman in the flight, enjoyed early success. But David helped Ryan Patel up the tempo with 56 for the third wicket in eight overs before plundering 154 in 18.1 overs with skipper Jamie Smith, a new Surrey partnership record in List A games against Warwickshire.
Defeat effectively ended Warwickshire's hopes of qualification. They finished on 268 for 9 after their last two wickets added 84 runs in the last ten overs but they only hit two sixes in comparison to Surrey's 17.
Most of their batsmen got starts but no one made more than 31 by Matt Lamb and No. 10 Craig Miles who finished 31 not out on his return to the side after a knee injury.
Openers Ed Pollock and Yates launched the innings with a stand of 54 before Pollock was yorked by Conor McKerr in the paceman's first over. McKerr then had Yates, who had been dropped on 13, caught off a leading edge for 28.
McKerr went on to pick up two more wickets and finished with 4 for 64 but the bowling honours went to legspinner Cameron Steel, who followed up four wickets against Leicestershire on Saturday with 4 for 39, including three wickets in 22 balls to break the back of Warwickshire's innings.
Steel went round the wicket to defeat Will Rhodes's attempted pull shot and bowled Dan Mousley, who was shaping to cut. Michael Burgess failed to pick Steel's googly and his fourth victim was Jacob Bethall, who picked out backward square leg instead of depositing a rare short ball from Steel into the stands.
That left Warwickshire 144 for 6 in the 30th over and judicious use of the short ball brought McKerr the wickets of Tim Bresnan and Lamb. The tail wagged vigorously, but David soon put Warwickshire's score in perspective.