The 20-year-old forward is to be loaned straight back to his former club, Championship promotion-chasers Crystal Palace, before linking up with United in July.
Zaha came through the youth academy at Crystal Palace and has scored 15 goals in 124 appearances for the Eagles since he was given a debut against Cardiff in March 2010.
A skilful, pacy forward who can play on the wing or as a striker, Zaha made his England debut as a substitute against Sweden last November.
United are believed to be paying around £10m up front for his services, with the fee potentially rising to £15m if certain conditions are met.
Manchester United boss Sir Alex Ferguson said: "As we like to do, we sign young players with potential. We can also develop players well here, that's proved to be the case many times.
"Hopefully the boy will enjoy it coming here, when he eventually does join us in the summer."
Zaha said: "I am delighted to be joining Manchester United and ending the recent speculation.
"I would like to thank the owners at Palace for making the move possible. However, my focus for the next five months will be solely at Crystal Palace.
"I have been at Palace for more than 10 years, I will always love the club, and I want to help get them get back to the Premier League, particularly for the fans who have always been so good to me."
And Crystal Palace co-chairman Steve Parish said: "I feel this is a great deal for the club and the player. We would like to thank Wilf for all he has done for the club and we all wish him well when he joins Manchester United in the summer.
"It was essential to Wilf and ourselves that he stayed at Palace for the remainder of this season, to help the club with its main aim of promotion to the Premier League."