The 34-year-old man, who left his son in a cellar, was taken into custody on Saturday evening in Düsseldorf.
Police in Berlin had released a picture of the man to help with the investigation after he went missing following the discovery of his dead son.
Officers in Düsseldorf found the man in an abandoned part of the city's harbour where they said, "He did not behave in a situation as one would normally behave," although they did not provide details.
He was arrested and is expected to be brought before a custody judge on Sunday afternoon.
The body of his son was found on Tuesday night after his mother reported him missing. His had failed to return from a visit to the father – his younger sister who did come home told their mother the boy and father had had a row, prompting fears for his safety.
When police went to the house in the Reinickendorf district of the city, they found blood traces which led to the cellar where they found the boy's body.
They initially arrested the flatmate of the father but soon released him, turning their attention to the father himself who had fled.