RICHMOND, Va. -- Dale Earnhardt Jr. made quick work of Tony Stewart, and then easily finished off his father in a duel that had the crowd standing to watch.
Earnhardt Jr., making his 16th start in stock car racing's premier circuit, passed his father with 31 laps to go in the Pontiac Excitement 400 on Saturday night and held on to become the first repeat winner on the series this season.
"What a driver this kid is," Dale Jarrett said. "Unbelievable."
Earnhardt Jr., who also won at Texas a month ago, ducked inside his father's car heading into turn 3 two laps after they emerged from pit stops under caution nose-to-tail for the lead, bringing many in the crowd of 100,000 to their feet.
Like his father has done in a career that includes seven series championships, the rookie also sparked controversy by costing Stewart, last year's rookie of the year, a seemingly certain chance to end a sophomore jinx.
Stewart was leading when Mark Martin slammed into the wall on the 361st of 400 laps, bringing out the ninth caution and sending the leaders to the pits.
After getting service, Stewart was on his way out of his stall when Earnhardt Jr. rammed the back of his car. The collision flattened Stewart's left rear tire, forcing him to pit again and dropping him to 22nd and out of contention.
"Tony Stewart, I really feel bad about that. He really didn't give me a whole lot of room to get out there," Earnhardt Jr. said. "I hate to cut a tire because he really had a race-winning car. He really had the fastest car here tonight."
On the track, Earnhardt Jr. pulled away briefly but couldn't shake two-time Winston Cup champion Terry Labonte or Jarrett, the defending series champion. Both closed within striking distance in the final laps, but could get no closer.
Earnhardt Jr. said he didn't think he would be able to hold off Labonte, a three-time winner on Richmond International Raceway's three-quarter-mile oval.
"He was coming pretty fast and as you could see, we didn't have the best race car at the end," the 25-year-old driver said. "But we made some smart moves on pit road."
And the kid is turning heads.
"I tried to save it until there were 10 or 12 laps to go to get back to the bottom," Jarrett said. "I thought I might catch him. Dale Jr. did a great job."
Earnhardt Jr.'s second career victory ended a record streak that had seen 10 different drivers win the first 10 races of the season. He led only the final 31 laps and beat Labonte to the finish by 0.159 seconds in a battle of Chevrolets.
"Tony Stewart had the car to beat," Labonte said. "We would have been running for third if he hadn't had that problem on pit road. ... I tried to save my tires and make a move there at the end, but I didn't have enough to get by him."
Jarrett, the defending race champion, was third, followed by Virginia native Ricky Rudd, Rusty Wallace, and brothers Ward and Jeff Burton, also of Virginia. Stewart was eighth, followed by Bill Elliott and the elder Earnhardt.
The race featured 21 lead changes among nine drivers and nine cautions that slowed the pace for 59 laps. Earnhardt Jr.'s average speed was 99.374 mph.
The race tightened the series points lead considerably because Bobby Labonte and Martin, who were first and second to start the day, both struggled.
Labonte was running among the leaders when he spun out racing three-wide with Mike Skinner and the senior Earnhardt on the 263rd lap. Labonte pitted under green with 48 laps left after he tangled with Jarrett in the backstretch and almost hit the wall.
Labonte finished 26th, and Martin was 32nd after his late accident.
Labonte still leads the points race, but Ward Burton passed Martin for second and trails by only three points. Ward Burton made up 70 points with his strong run. Martin is third, another 30 points back, followed by Jeff Burton and the elder Earnhardt .
Earnhardt Jr., a two-time Busch Grand National Series champion, climbed from 22nd to 17th in the points race, second among rookies to No. 14 Matt Kenseth.