The England Under-19 international, who has not played a Premier League game for the Gunners, will move to the Estadio da Luz on a five-year deal.
Willock, 19, had been offered a new deal at Arsenal, but his move to Lisbon has been revealed via Benfica's Twitter feed.
Manchester City had also been linked with the attacker, whose contract expires on 1 July.
"I hope I can show what I can do on the pitch. I think we have a great team and we can achieve great things in the future," Willock said on the Benfica website.
Willock had been with Arsenal since 2003 with his younger brother, Joe, remaining in the Gunners youth set-up.
Find all the latest football transfers on our dedicated page.
Arsenal forward Chris Willock is to join Benfica when his contract expires.