The eight-year-old boy – and his 40-year-old mother – were pushed onto the tracks in front of an oncoming high-speed train as it was arriving at the station. Police said in a statement that the child was hit by the train and died at the scene.
His mother was able to escape by rolling onto the footpath between platform seven and eight. She was taken to hospital where she was treated for injuries.
Police said initial findings suggest the suspect then attempted to push another person onto the tracks but that person was able to escape.
The alleged perpetrator, a 40-year-old man then tried to flee the main station. However, onlookers chased him and detained him there until police arrived.
According to police, the suspect and the victims did not know each other.
Frankfurt police are trying to establish the exact circumstances surrounding the tragic incident. They have opened a murder inquiry and were questioning the suspect on Monday for possible motives.
"The boy and his mother were pushed in front of an arriving train," said a police spokeswoman. "The mother was able to save herself."
It happened at around 9.50am on Monday at platform seven of the station. The ICE 529 train had reportedly been travelling from Düsseldorf to Munich.
Regional media broadcaster Hessenschau said, according to a witness, that several children were on the platform when the attack occurred.
Emergency services at the scene at Frankfurt main station. Photo: DPA
"People collapsed howling," the eyewitness who was sitting on the train at the time told the Hessenschau.
Four platforms were closed while investigations got underway, a spokeswoman for Deutsche Bahn said. Passengers travelling by train today should check for any disruption.
The country has been left in shock at the crime.
Deutsche Bahn said it would set up a special telephone hotline to provide care and advice to witnesses to the tragedy. The number is 0800 3 111 111.
Frankfurt Central Station is one of the largest railway stations in Germany and is used by almost 500,000 people daily.
Hesse state premier Volker Bouffier, of Angela Merkel's centre-right Christian Democrats, commented on the shocking act.
"It is bewildering that a mother and child were pushed in front of an arriving train," he said. "The investigation of the heinous act is now in the hands of the competent authorities."
According to news channel NTV, the suspect is a citizen of Eritrea, reported AFP.
The far-right Alternative for Germany (AfD) party quickly linked the case to a mass influx of migrants and refugees in recent years.
"The hideousness of this act can hardly be surpassed," wrote the party's Alice Weidel on Twitter, demanding that the government "finally start to protect the citizens of this country".
However, others slammed the AfD, accusing the party of using the incident for its own gain.
It came just over a week after a woman was pushed in front of a train at the station of the small town of Voerde in North Rhine-Westphalia. The 34-year-old mother-of-one died at the scene. A 28-year-old man was arrested.