All three offers fell short of Arsenal's valuation - they were reluctant to enter formal negotiations until a bid exceeded £20m, and hoped to hold out for £25-30m.
United, City and Juventus increased their offers but, of the three, United were the only side Van Persie would consider joining.
It is understood Van Persie was encouraged by the arrivals of Germany forward Lukas Podolski, France striker Olivier Giroud and Spain midfielder Cazorla - to the point where he was open to the idea of staying with or without a new contract.
But Wenger pulled him aside shortly before Sunday's friendly victory over Cologne, told him he would be sold if a deal could be reached and informed the Dutchman he was no longer part of his plans.
Formal discussions between Arsenal and United began immediately, with Gazidis and United chief executive David Gill agreeing a fee of £22.5m on Tuesday, only for it to be vetoed by Wenger as he held out for £25m.
On Wednesday morning, United boss Sir Alex Ferguson called Wenger to offer £23m and Wenger quoted him £24m.
But a compromise was finally reached on Wednesday evening and Van Persie will travel to Manchester on Thursday to discuss terms and begin his medical.