Kyle Busch completed the sweep in Texas by winning the Duck Commander 500 at Texas Motor Speedway Saturday night.
With just 33 laps remaining, Busch restarted second coming out of the race's final caution and passed Martin Truex Jr. on the outside to take the lead, which he wouldn't relinquish until the checkered flag.
It's the second straight NASCAR Sprint Cup win for Busch, who won in Martinsville, Va., last week. It's also his fourth straight win in three different series -- he won the Camping World Truck race in Martinsville last weekend and the Xfinity race here Friday night. This is the second time Busch has swept Texas.
Dale Earnhardt Jr. finished second, Joey Logano third, Jimmie Johnson fourth and Chase Elliott fifth, his best career finish.
Sign Up and Save
Get six months of free digital access to The Charlotte Observer
But for most of the race, which was delayed nearly two hours by rain, Martin Truex Jr. and Carl Edwards had the dominant cars.
The two followed a pattern for the first two-thirds of the race: Edwards would win off pit road and be fast at first, only to be tracked down by Truex 20-30 laps later.
Edwards led all but one of the first 58 laps before Truex passed him on the backstretch on lap 59.
After a caution for debris on lap 136, Edwards got off pit road first to retake the lead from Truex and held on to the top spot for the next 37 laps before Truex caught him again and passed him on lap 174.
Edwards, who led 124 laps, regained the lead on pit road again a couple laps later during green-flag stops, but Truex, who had the fastest car in practice Thursday and Friday, tracked him down again to take the lead on lap 208.
The first accident of the race came on lap 211, when Josh Wise hit the wall in turn three. It also led to controversy: Jimmie Johnson was on pit road when caution came out and seemingly went a lap down, but Dale Earnhardt Jr. was given the free pass. Johnson, though, still ended up on the lead lap after the caution.
Matt Kenseth, who pitted just before the caution came out, had the lead coming out of the caution. But Truex, once again, tracked down the leader and regained the lead on lap 236.
Edwards, who had run so well up to this point in the race, was forced to go back into the pits to fix a loose wheel soon after the green came back out, and he went a lap down. He ended up finishing seventh.
Truex, who led 141 laps, continued his dominant performance until a series of cautions late in the race. Debris caused a caution at lap 280, then Greg Biffle hit the wall on lap 288 and then the big one on lap 294: A 14-car accident on the backstretch that started when Austin Dillon got loose, made contact with Johnson and hit the wall coming out of turn two.
Busch beat Truex on the outside on the ensuing restart and refused to give up the lead.
The big mover of the night was Chase Elliott. Elliott, who qualified fourth, started at the back of the pack after changing his transmission. But he flew through the field early, getting up to 12 in less than 100 laps and cracking the top 10 by lap 121.
Drivers pitted early and often to keep from losing too much tire grip with the new aerodynamic packages, usually going just 35-40 laps before coming in for new tires.
It rained on and off all day with wind whipped across the track. Weather delayed the start by one hour and 50 minutes, and even then it started under a green/yellow caution.