Charlotte, Atlanta and Daytona Beach, Fla., were the finalists prior to Monday's announcement.
"You look at what's going to be best in the long run and I'm happy to tell you today that the NASCAR Hall of Fame is going to be here in Charlotte," said NASCAR Chairman and CEO Brian France.
The North Carolina city had been considered the favorite. The surrounding area is the home to most teams and drivers and the Lowe's Motor Speedway and NASCAR's research and development center is in suburban Charlotte.
"The most important factor was all the drivers are there," said Nextel Cup owner Felix Sabates. "To make a Hall of Fame successful they need drivers to make appearances.
Charlotte leaders proposed $137.5 million to build the Hall of Fame, which is scheduled to open in 2009.