Soares becomes Arsenal’s second January signing after the arrival of Pablo Mari from Flamengo earlier this week.
The 28-year-old’s contract with Southampton is due to expire at the end of this season, and has an option to sign a four-year contract at the Emirates Stadium.
Arsenal have paid Southampton a loan fee in a region of £1 million for the Portugal international and will cover his wages for the remainder of the campaign, which is around £65,000 per week.
Few moments after becoming an Arsenal player, Soares said it is a dream come true to play for the Gunners.
"It's a dream come true being here, and being able to play for Arsenal is unreal,” he told the club’s website.
"Arsenal is a top team. They are a very, very good club, with fantastic fans as well. They are known to be so well supported and for me, it's a pleasure to be here.”
"Like I said, it's a dream come true because I always thought about coming here and imagined it, and seeing it happen is really amazing."
Soares joined the Saints from Sporting CP in June 2015 on a four-year contract and made his debut a month later in Southampton’s 3-0 victory over Vitesse in the third qualifying round of the UEFA Europa League.
The Portuguese was sent on loan to Inter Milan in January 2019 for the remainder of the season with an option to buy, but after an unconvincing start to life in Italy the Nerazzurri passed up the chance to sign him.