The 22-year-old, who flew into London on Sunday, is expected to be confirmed as an Arsenal player later today once he's completed his medical.
The deal will see Arsenal pay a £2.5million fee up front and then the midfielder's wages in full for the remainder of the season.
Odegaard left the Spanish capital over the weekend after the two teams reached an agreement and will not be required to undergo quarantine before linking up with his new team-mates.
Odegaard will become the second player from the Bernabeu to join Arsenal after Dani Ceballos extended his loan spell in the summer.
His arrival will mean another foreign signing at Arsenal will have to leave, however, with under-fire goalkeeper Alex Runarsson in the firing line.
This will be the Norwegian's fourth loan spell away from the Bernabeu after joining the club as a 16-year-old in 2017.