The Gunners have paid £3m for the 19-year-old forward, who has signed a long-term contract at the Emirates Stadium.
Arsenal are looking to further bolster their forward lines following the exits of Pierre-Emerick Aubameyang in January and Alexandre Lacazette to Olympique Lyon this summer.
Mikel Arteta's side are also looking to convince Gabriel Jesus to swap Manchester City for a move to North London.
"We’re delighted to have completed the transfer with Sao Paulo, as Marquinhos was a player we had been watching for a while," Arsenal's technical director Edu told the club's official website.
"At 19, he is still very young, so he is a player for the future. We look forward to Marquinhos now joining us for pre-season, making his new home, and continuing to grow and develop with us."
Arsenal missed out on Champions League football once again last season after ending the 2021/2022 campaign in fifth position.
Marquinhos made 41 appearances after making his debut for Sao Paulo in July 2021, scoring four goals and providing three assists.