The 18-year-old has signed a six-year contract at the Santiago Bernabeu to become Real Madrid's fourth summer signing.
Carlo Ancelotti's side have already brought in Jude Bellingham, Joselu and Fran Garcia this summer.
Guler came through the Fenerbahce youth ranks and broke into the first team in the 2021/2022 season.
He made 51 appearances in total for the club, scoring nine goals and producing 12 assists.
Barcelona were also huge admirers of Guler, who will wear the number 24 jersey at Real Madrid.
Fenerbahce confirmed Guler's departure with a statement that read: "The parties have agreed on the transfer of our professional football player Arda Güler to the Spanish Club Real Madrid CF in exchange for the termination of the player's contract with us for 20 million euros.
"The solidarity contribution fees that will arise as per the FIFA instructions will be paid by Real Madrid CF. "In addition to the transfer fee, a maximum bonus of 10 million Euros will be paid to our Club by Real Madrid CF, depending on the performance of the Player."
Guler is already a Turkish international, with four appearances and one goal for his country recorded so far.