Kurt Busch passed Martinsville master Jimmie Johnson for the lead with 10 laps to go Sunday and held off the eight-time winner to win at Martinsville Speedway for the first time since October 2002.
Johnson, with eight wins in 25 career starts on the 0.526-mile oval, led 11 times for 296 laps. He seemed on his way to another when he took the lead from Busch with 17 laps remaining. But Busch stayed close, ducked underneath Johnson seven laps later and Johnson never made a good run at the lead again.
Busch's 25th career victory ended a winless streak that had reached 83.
The race featured an event-record 33 lead changes and 12 race leaders.
Dale Earnhardt Jr. was third, followed by Joey Logano and Marcos Ambrose.