Two British-based airmen were killed and two others wounded when a man armed with a handgun opened fire on them at close range.
Wednesday's attack at Frankfurt airport, the first on American forces in Germany in a quarter of a century, was described by US president Barack Obama as an "outrageous act".
The suspect, identified as a 21-year-old man from Kosovo who apparently worked at the airport, was being questioned by authorities, said Frankfurt police spokesman Manfred Fuellhardt.
Family members in Kosovo described the suspect as a devout Muslim who was born and raised in Germany and worked at the airport.
The attacker got into an argument with airmen, based at RAF Lakenheath in Suffolk, outside their military bus before opening fire, killing the bus driver and one other serviceman and wounding two others, one of whom was in a life-threatening condition, Mr Fuellhardt said. He said the attacker also briefly entered the bus.
The suspect then fled into the airport terminal, where he was grabbed and disarmed by two police officers and a US airman who had chased him into the building, authorities said.
The victims, part of a group of about a dozen members of an air force military police and base security unit, had just arrived from Lakenheath, home to the 48th Fighter Wing, the US Air Force said.
They had landed at Frankfurt airport, one of Europe's busiest, and were waiting outside Terminal 2 to be driven to nearby Ramstein air base, which is often used as a logistical hub for operations in Afghanistan and Iraq. The two wounded airmen were taken to a hospital.
"I'm saddened and I'm outraged by this attack," Mr Obama said at the White House. "I want everybody to understand that we will spare no effort in learning how this outrageous act took place."
In Berlin, German chancellor Angela Merkel expressed sympathy for the victims and their families and promised Germany would do everything in its power to investigate the crime. "It is a terrible event," she said.