CONCORD, N.C. -- Kyle Larson knew he wasn't winning the fan vote to get into the Sprint All-Star Race.
That meant doing everything he could to qualify on the track, including trading paint with Chase Elliott on the final lap of the final 10-lap segment of the Sprint Showdown to move on and earn a chance to win $1 million.
Larson, who received some criticism for racing clean and not doing enough to beat Matt Kenseth on the final lap at Dover, was extremely aggressive coming down the stretch. He pinned the hard-charging Elliott near the top of the track, then edged him out at the finish line with the two cars attached.
"I'm sure Chase is upset with me and has all of the reason in the world to be, but hey, we are racing for a million bucks and I haven't had a chance to do that before," Larson said.
"I knew I had to win because I probably wasn't going to win the fan vote," Larson said. "I did what I can do."
Larson said making contact with Elliott was the only way to win the race.
"I hate racing like that, stuck on peoples' doors, but that was my only shot to hold him off," Larson said. "He had a big run on me [on turn four]. ... I just wanted to protect the bottom of the track because I knew I could fight him off better down there."
Bayne won the first segment in dramatic fashion by edging out Elliott.
Starting from the second row on a final lap restart, Bayne forged his way in between Ryan Blaney and Elliott, forcing a three-wide situation. Bayne took the lead on the backstretch and held on to edge Elliott at the finish line by .005 seconds.
"There was a tiny hole and we got a good restart," Bayne said. "Off of [turn] two they kind of fanned out a little bit, and I got a little run and saw a little hole."
Bayne said at one point he felt stuck in the middle of the three-car pack, but got a push from behind from teammate Ricky Stenhouse Jr.
"Without that I probably wouldn't have won the race," Bayne said. "It is really nice to have a teammate like that that will choose to work with you when it may not be in his best interest."
Biffle was relatively unchallenged in the second segment and won going away to punch his ticket to the All-Star race.
"Hope nobody had dinner reservations," crew chief Brian Pattie said over the radio after Biffle qualified for the night race.
Biffle credited his crew for getting him back out on to the track in third place after a quick two-tire change following the first segment.
"I was being as aggressive as I could be, and I knew it was 20 laps and I knew that was my chance," Biffle said. "[Austin Dillon] was a little bit loose and so was I, but I made some adjustments on my driving style and was able to get by him."
Sprint Showdown qualifying was pushed back after heavy rains washed out all track events Friday night.
There is more rain in the forecast for Saturday night, which could potentially delay the start of the All-Star race.