The 20-year-old forward has agreed a five-and-a-half year deal but will be loaned back to Palace until the summer.
United will pay £10m up front, with the fee potentially rising to £15m based on Zaha’s appearances and success.
Both clubs have refused to comment on a proposed deal, but Sir Alex Ferguson has been heavily involved in the talks, having remained in England as his squad travelled to Qatar on Sunday for a short training camp.
Zaha, who came through the youth academy at Selhurst Park, has scored 15 goals in 124 appearances for the Eagles since his debut against Cardiff in March 2010. He was named the Football League Young Player of the Year last season.
The signing of Zaha, who plays in a wide position, signals that Nani will be sold this summer. United have stalled on offering the Portuguese winger a new contract, and with his current contract expiring in 2014, United will cash in on him this summer.
The Zaha signing will also serve as a wake up call for Ashley Young who has flattered to deceive since his big money move from Aston Villa.