The Boeing 767-300 plane with 202 passengers and crew on board had taken off from the Ethiopian capital of Addis Ababa and landed in the Swiss city at about 6am local time.
Officials said no-one on the flight was injured and the hijacker was taken into custody after surrendering to police.
The plane first sent a distress message while flying over Sudan’s airspace on its way to Rome, an Ethiopian official said.
Redwan Hussein, Ethiopia’s communications minister, said: “From Sudan all the way to Switzerland, the co-pilot took control of the plane.” Mr Hussein did not elaborate.
Passengers on the plane were unaware it had been hijacked, officials said. Even local authorities at first thought the plane simply wanted to land in Geneva for an emergency refuelling before realising it was hijacked, Geneva police spokesman Eric Grandjean said.
Two Italian fighter jets were scrambled to accompany the plane, Geneva airport chief executive Robert Deillon said.
The co-pilot, whose name has not been released, took control of the plane when the pilot left the cockpit, Mr Deillon said.
A few minutes after landing in Geneva, the co-pilot left the cockpit, then went to the police forces close to the aircraft and “announced that he was himself the hijacker”, Mr Grandjean said.
It was not immediately clear why the co-pilot wanted asylum. However, Ethiopian Airlines is owned by Ethiopia’s government, which has faced persistent criticism over its human rights record and alleged intolerance for political dissent.
Police escorted the passengers from the plane one by one, their hands over their heads. They were taken to buses and moved from the scene of the incident.
Geneva prosecutor Olivier Jornot said the co-pilot will be charged with taking hostages, a crime punishable by up to 20 years in prison. The Swiss federal prosecutor’s office will take over the investigation.
Mr Jornot added that the man’s chances of winning asylum were slim.
He said: “Technically there is no connection between asylum and the fact he committed a crime to come here. But I think his chances are not very high.”
Geneva Airport was closed to other flights for about two hours after the hijacked plane landed.
Campaign group Human Rights Watch said Ethiopia’s human rights record “has sharply deteriorated” over the years. The group said authorities severely restrict basic rights of freedom of expression, association and assembly.
The government has also been accused of targeting journalists, opposition members and minority Muslims.
There have been numerous hijackings by Ethiopians, mostly fleeing unrest in the East African nation or avoiding a return.
In a 2002 incident, a pair of passengers, armed with knives and an explosive device, attempted to hijack a domestic Ethiopian flight but were shot and killed by in-flight security officials.