Willock, 21, scored eight goals for the Magpies in just 14 Premier League appearances, including matching Newcastle legend Alan Shearer's record of scoring in seven consecutive games to end the season. Newcastle are reported to have paid over £20 million ($27 million) for the England under-21 international.
"I'm buzzing to be here," Willock said in a Newcastle statement. "I loved my time here last season and I'm really happy to be back and to be a Newcastle United player. Leaving Arsenal is obviously a big step, and I'd like to thank everyone involved with the club for all their support over the years, but this is the right move to the right club at the right time for me."