The 21-year-old right-back, who can also play on the left and in midfield, has signed a five-year contract with the Ligue 1 side reached an agreement worth a reported €20 million (£18m/$23m) with €5m more in add-ons.
The three-time Germany international made 76 appearances for Leverkusen's first team after rising through their youth academy to make his debut in August 2015.
But Henrichs said he is excited to make the switch to Ligue 1, telling the club's website: "I am very proud to be involved with AS Monaco, a European top club for many years. I will do everything to adapt quickly and help the team win many victories. I cannot wait to work with the staff and my new teammates."
He spent 14 years with Leverkusen overall, and left with best wishes from the German side's sporting director Rudi Voller.
"Benny has kicked the ball under the Bayer cross since childhood and celebrated great success," he said. "We wish him all the best in his new life abroad."
Meanwhile, Monaco's vice-president Vadim Vasilyev said he is expecting a lot from the versatile player.
"Benjamin Henrichs is a talented defender with solid national experience and experience at the very highest international level. His arrival reinforces the quality of our workforce," he said. "I am sure he will contribute to the good results of the team."
Monaco have had a busy transfer period, having already signed Aleksandr Golovin from CSKA and Willem Geubbels from Lyon among others after selling Fabinho to Liverpool and seeing Thomas Lemar join Atletico Madrid.