A Russian Tupolev 154 carrying vacationers from Moscow to Barcelona collided with a DHL cargo jet around 11:40 p.m. on Monday night.
DHL's Boeing 757 had originated in Bahrain and was on its way to Brussels.
Officials say the two aircraft crashed in mid-air near Lake Constance on the German-Swiss border near the town of Überlingen.
Swiss authorities say both craft were on a collision course when Swiss ground control instructed the Tupolev to descend. Air traffic controllers said they had to ask the Russian crew three times before they got a reaction. Meanwhile, the DHL aircraft's warning system instructed that pilot to dive. Both planes were descending when they collided.
Debris was spread over a wide area and a number of buildings were set on fire -- including a school.
Bashkirian Airlines operated the Tupolev 154 charter flight. An unconfirmed statement by an airline spokesman said there were 49 people under the age of 18 aboard, and that they were the children of high-ranking Russian officials.
A Spanish hotel where the group had been booked told news agencies that the children planned to spend their holidays at the Spanish resort of Vilaseca, which is located near the popular theme park Port Aventura.
Just before its fiery crash, the plane made a stop in Munich.
Some 500 police and search and rescue workers are now combing the area around Überlingen searching for the remains of the victims and examining the wreckage. More than a dozen boats are searching Lake Constance as well. One flight data recorder has already been recovered.