Hornaday, a four-time truck champion, took the lead after a late-race round of pit stops. The 53-year-old driver then held off 21-year-old youngster Austin Dillon during the final 10 laps to extend his record of career wins in the series. Hornaday finished 0.4 seconds ahead of Dillon.
Normally driving the No.33 Chevrolet for Kevin Harvick Inc., Hornaday took over driving duties for the team's No.2 truck, with crew chief Bruce Cook guiding his efforts. Cale Gale drove the No.33 for KHI in this race.
"I can't thank [team co-owners] Kevin and DeLana [Harvick] enough for believing in me and putting me in the No.2 truck," Hornaday said. "I got my 50th win, and that's pretty darn cool."
All three of Hornaday's wins this year have come on 1.5-mile tracks (Texas, Atlanta and Kentucky). He also won at Kentucky for the third time, with his other victories coming in 2006 and '09.
Finishing second, Dillon increased his lead in the championship standings to three points over James Buescher, who placed third.
"I was driving so hard, but the right-front [of the truck] started pushing really bad," Dillon said. "I just got too tight in traffic."
Dillon's younger brother, Ty, finished 18th in his NASCAR national series debut.
Johnny Sauter fell 19 points out of the lead after finishing 14th. Sauter was penalized for speeding on pit road during his last stop.
Hornaday remained in championship contention, as he trails Dillon by 42 points. Five races remain this season.
The 225-mile race featured a track-record 18 lead changes among 11 drivers. Seven cautions occurred during the event, with one them for a three-truck incident involving Miguel Paludo, Max Papis and Parker Kligerman.