Yorkshire 179 for 7 (Ballance 40, Brown 3-34) beat Worcestershire 167 for 8 (Whiteley 37, Patterson 3-35, Bresnan 3-38) by 12 runs
Worcestershire Rapids suffered their first setback in this season's Vitality Blast as they went down by 12 runs to Yorkshire Vikings at New Road.
The Rapids surrendered the last remaining unbeaten record in the competition after reeling off four successive wins.
They still head the North Group but Yorkshire's third win in four matches means they have joined Lancashire Lightning and Notts Outlaws on six points - just two behind the Rapids.
Yorkshire batted consistently after being put into bat with Adam Lyth, Harry Brook, Gary Balance and Jonathan Tattersall all making useful contributions in steering them to 179 for 7.
The Rapids never recovered from losing opener Martin Guptill for a second ball duck and, despite some late hitting from Ross Whiteley, they closed on 167 for 8.
The Vikings were given a flying start by Lyth after being put into bat and the left hander set the tone with three boundaries in the opening over from Dillon Pennington.
The former England opener deposited Pat Brown over cover for six and raced to 35 out of 41 off 21 balls.
Brown had his revenge when Lyth holed out to Ross Whiteley at deep square leg.
Tom Kohler-Cadmore was making his first appearance at New Road since moving to Yorkshire from Worcestershire mid-way through last season.
But he was overshadowed by Lyth and made only five before being yorked by Pennington.
Ballance looked in good touch and struck four sixes - including two in an over from Rapids skipper Brett D'Oliveira - in his 40 from 21 balls.
Travis Head - back with Worcestershire after his recent spell of white-ball action with Australia - brought about his downfall as Balance went for one big hit too many and Daryl Mitchell held onto the skier at deep midwicket.
Mitchell then made an impact with the ball in the next over as Harry Brook flicked him straight to Joe Clarke at short fine leg at 118 for 4 in the 13th over.
On loan Nottinghamshire seamer Luke Wood returned to the attack to have Jack Leaning caught at long on.
Brown ended his spell with two wickets in two balls. Vikings keeper Jonathan Tattersall fell at deep mid wicket - after Mitchell parried the ball back inside the boundary for Guptill to complete the catch - and Bresnan was lbw.
When the Rapids began their reply, Bresnan struck in his first over as Guptill went for an expansive drive and was caught behind. Clarke smashed him over deep midwicket for six but perished to the next delivery after making 17 with Patterson accepting the chance at mid-off.
Wickets continued to fall at regular intervals as the Rapids slipped behind the required scoring rate.
Mitchell clipped Patterson behind square and fell victim to smart catch from Bresnan and Ben Cox was held at long off in Azeem Rafiq's first over.
Head now carried the Rapids main hope but on 23 he became the first success for Vikings debutant Jordan Thompson.
The 21-year-old right armer, a product of the Yorkshire Academy, deceived Head with a slower ball and Ballance made no mistake at deep midwicket. Bresnan then came back and claimed D'Oliveira as his third victim.
Much depended on Whiteley, who hit six sixes in an over in last season's fixture at Headingley, but after making 37 he carved Patterson on the off side and Jack Leaning took a fine low catch.
Patterson dismissed Wood for his third success of the innings as the Rapids were unable to conjure up the necessary runs.