Jimmie Johnson claimed his first NASCAR Sprint Cup win of 2014 in the Charlotte 600 after a race-long battle with Kevin Harvick and Matt Kenseth.
Polesitter Johnson, the first man to win the 600 from pole position since he himself did in 2004, established an early lead at a track where he had not won since '10, but now holds the Cup record with seven triumphs.
Stewart-Haas driver Harvick pursued Johnson for the majority of the opening stints, taking the lead from the Hendrick Chevrolet for the first time on lap 76. The pair dominated the first half of the race, leading all but three laps between them in the fading sunshine.
As darkness fell, Kenseth, who was also searching for his first win of 2014, took the lead after the race's seventh caution period, moving past Johnson at the restart and making it a three-way fight into the closing stages.
Carl Edwards briefly looked like he might cause an upset on a fuel-saving strategy, but the final caution forced him to abandon that plan, and on the last restart Kenseth seized the lead from Jeff Gordon, who had gained places by only changing two tyres at his last pitstop.
Johnson reclaimed the lead for the final time on lap 391 of 400, diving underneath Kenseth after the Joe Gibbs Toyota driver had tried to hold him off with a strong block.
Harvick grabbed second from Kenseth soon afterwards. Edwards narrowly beat Jamie McMurray to fourth, with Gordon ending up seventh behind Brian Vickers.
Gordon reported only minor issues with the back pain that had sidelined him during practice on Saturday.
Kurt Busch's Indianapolis 500/Charlotte 600 'double' attempt ended when the engine in his Stewart-Haas Chevrolet expired after he had raced 906 miles in one day. He had earlier finished sixth at Indianapolis in his first IndyCar race.
His team-mate Danica Patrick briefly ran second, after starting from her highest qualifying position on a non-restrictor plate race in fourth.
She would later get caught up in a six-car crash triggered when Marcos Ambrose lost the rear end of his Richard Petty Motorsports Ford and slammed into the Turn 4 wall, before ultimately retiring when her engine, already a cylinder down, finally exploded.
Results - 400 laps:
Pos Driver Team/Car Time/Gap
1. Jimmie Johnson Hendrick Chevrolet 4h07m27.000s
2. Kevin Harvick Stewart-Haas Chevrolet +1.273s
3. Matt Kenseth Joe Gibbs Toyota +1.841s
4. Carl Edwards Roush Fenway Ford +4.985s
5. Jamie McMurray Ganassi Chevrolet +5.784s
6. Brian Vickers Waltrip Toyota +8.186s
7. Jeff Gordon Hendrick Chevrolet +9.065s
8. Paul Menard Childress Chevrolet +10.805s
9. Kyle Busch Joe Gibbs Toyota +11.363s
10. Brad Keselowski Penske Ford +12.494s
11. Aric Almirola Petty Ford +13.740s
12. Joey Logano Penske Ford +14.580s
13. Tony Stewart Stewart-Haas Chevrolet +24.604s
14. Kasey Kahne Hendrick Chevrolet -1 lap
15. Ryan Newman Childress Chevrolet -1 lap
16. Austin Dillon Childress Chevrolet -1 lap
17. Clint Bowyer Waltrip Toyota -1 lap
18. Kyle Larson Ganassi Chevrolet -2 laps
19. Dale Earnhardt Jr Hendrick Chevrolet -2 laps
20. Trevor Bayne Wood Brothers Ford -2 laps
21. Greg Biffle Roush Fenway Ford -2 laps
22. Denny Hamlin Joe Gibbs Toyota -2 laps
23. AJ Allmendinger JTG Daugherty Ford -2 laps
24. Casey Mears Germain Chevrolet -2 laps
25. Martin Truex Jr Furniture Row Chevrolet -2 laps
26. Ricky Stenhouse Jr Roush Fenway Ford -3 laps
27. Cole Whitt BK Toyota -3 laps
28. Michael Annett Baldwin Chevrolet -4 laps
29. Marcos Ambrose Petty Ford -4 laps
30. Michael McDowell Leavine Ford -4 laps
31. David Ragan Front Row Ford -5 laps
32. Brian Scott Circle Sport Chevrolet -5 laps
33. Alex Bowman BK Toyota -8 laps
34. Joe Nemechek Robinson Toyota -10 laps
35. Blake Koch FAS Lane Ford -10 laps
36. Landon Cassill Hillman Chevrolet -18 laps
37. Justin Allgaier Hscott Chevrolet -22 laps
Ryan Truex BK Toyota 303 laps
Danica Patrick Stewart-Haas Chevrolet 281 laps
Kurt Busch Stewart-Haas Chevrolet 271 laps
Jose Wise Parsons Chevrolet 229 laps
Reed Sorenson Baldwin Chevrolet 162 laps
David Gilliland Front Row Ford 160 laps