Juventus said in a statement that Al-Duhail will pay eight million euros in two instalments for Benatia as well as a further two million euros in bonuses.
The defender made 59 appearances for Juventus since arriving in 2016, winning two Serie A and domestic cup titles and the Italian Super Cup.
However the 31-year-old fell out of favour with coach Massimiliano Allegri following the return of Leonardo Bonucci last summer from AC Milan.
Bonucci has been sidelined with an ankle sprain but according to press reports Benatia will be replaced by Lazio’s Uruguayan defender Martin Caceres, who has already passed a medical.
Download our app and read this and other great stories on the move. Available for Android and iOS.