After starring at the 2014 World Cup, the Colombian earned a big money move to Los Blancos with Carlo Ancelotti the head coach in the Spanish capital at the time.
Despite enjoying a fruitful first couple of years with Madrid, James eventually fell out of favour under Zinedine Zidane and was shipped out to Bayern Munich on a two-year loan.
He returned to his parent club for the 2019/20 campaign but was only used sparingly under the Frenchman.
Now, he has hooked up with Ancelotti again, and James admits the presence of the Italian was a key factor in his choice to join Everton.
“I am really, really happy to be at this great club, a club with so much history, and here with a manager who knows me really well,” he told the official Everton website.
“I’m looking forward to achieving great things here – and winning things, which is what everyone’s aim is.
“I’ve come here to try to improve, to get better. I’ve also come here to help the team to win, to play good football – entertaining football.
“I’m convinced, with Carlo and his technical staff, we can achieve big things and one of the big reasons [I signed] was the presence of Carlo Ancelotti.
“I have enjoyed some great times with him previously at two different clubs. That was a massive reason to come here.”
James is Everton's second signing within a week as only a couple of days ago they completed the transfer of Allan from Napoli for a similar fee.
Both players previously worked with Ancelotti at Real Madrid and Napoli respectively.