The 28-year-old England international becomes the third summer arrival at St. James’ Park after Jeff Hendrick and goalkeeper Mark Gillespie.
Aston Villa were also interested in a move for Wilson but Dean Smith’s men withdrew a higher offer of £21m after the striker made it clear he favoured a move to Newcastle.
Wilson joined Bournemouth from Coventry in the summer of 2014 and went on to make 187 appearances for the Cherries, scoring 67 goals.
He scored eight goals in 35 Premier League appearances as Bournemouth suffered relegation last season.
"From the minute I knew that Newcastle were interested, it was definitely something that appealed to me," Wilson said in quotes published on Newcastle's website.
"It's a massive club with great history. Along the years, they've had great strikers so if I can emulate half of what they've done, I'd like to attempt that.
"I believe in my ability as a player. As a striker I think it's important to set yourself goals long term and short term, and I'm hoping to achieve them.
"With the players around me, I believe we can get the goals we need as team and I want to help contribute to that."
Manager Steve Bruce added: "Callum is somebody I've admired for a long time and I'm delighted to get him."
"He has done fantastically well at Bournemouth and was deservedly playing centre forward for England less than two years ago.
"The club has worked ever so hard to get Callum here and we have beaten off competition from a number of clubs."
Newcastle United will begin the 2020/2021 Premier League season away at West Ham United on Saturday.