Logano grabbed the lead early in the second stage and was able to remain out front but Denny Hamlin and Elliott raced feverishly over the final five laps with Hamlin coming out on top.
Elliott finished third, Kyle Busch fourth and Ryan Blaney completed the top-five.
Following the break between Stages 1 and 2, most of the lead-lap cars remained on the track with Hamlin still in the lead.
On the restart on Lap 83, Hamlin was followed by Elliott, Kyle Busch and Logano.
Alex Bowman was penalized for speeding on pit road and had to restart from the rear of the field.
First Elliott, and then Logano, moved into the lead after the restart.
With 60 laps remaining in the second stage, Logano had moved out to a more than 2-second lead over Elliott as Hamlin moved into third.
After 110 laps, Logano still held a 2.8-second lead over Elliott as Hamlin remained close behind in third.
After 125 laps, Hamlin had moved to the rear bumper of Elliott, challenging him for the second position.
With 20 laps remaining, Elliott had cut Logano’s lead to under a second.
Logano maintained a small but steady lead over Elliott with 10 laps remaining in the second stage.
Hamlin dove to the inside of Elliott off Turn 2 with one lap remaining to grab the second position.