The 31-year-old joined the Hornets in January 2016 and made 48 appearances across all competitions.
The versatile forward was a prominent figure for Morocco at the 2018 World Cup as they exited in the group stage of the tournament.
The King Fahd Stadium outfit confirmed the capture of the former Galatasaray player on Monday.
“Al-Nassr signed a three-year contract with Moroccan midfielder Nordin Amrabat, congratulations,” Al-Nassr tweeted.
Amrabat could make his debut for his new club when they clash with Al Jazira in Arab Club Champions Cup tie on August 7.