Kyle Larson is on a hot streak.

The Hendrick Motorsports driver won the NASCAR All-Star Race from pole position at Texas Motor Speedway on Sunday night following two straight wins in the Cup Series.

(AP)

Larson won the 2019 All-Star Race, but was serving a suspension from the series at the time of the 2020 event.

Larson held off a challenge from Brad Keselowski during the closing laps of the six-stage exhibition race to grab the winner-take-all $1 million prize. Last year's winner, Chase Elliott, was third.

CLICK HERE TO GET THE  FOX NEWS APP

Hendrick drivers Elliott, William Byron and Larson started the final segment 1-2-3. Elliott had moved from third to first during the 30-lap fifth segment that included a required four-tire stop and $100,000 prize for his crew that had the fastest stop. Byron finished the night in seventh place.

Texas is the third different track in three years for the All-Star race. It was held last summer at Bristol, where it was moved from Charlotte, which hosted 34 of the first 35 All-Star races, because of COVID-19 restrictions in North Carolina.

The Associated Press contributed to this report