The motive for the attack on Fritz von Weizsaecker, 59, on Tuesday evening was unclear.
Von Weizsaecker, a doctor, had just delivered a lecture on liver diseases at the Schlosspark hospital in the western Berlin neighbourhood of Charlottenburg when he was stabbed, a police spokesman said.
He died at the scene despite efforts to save him.
The suspect was overpowered by other people present, one of whom was severely injured by the attacker.
Police opened an investigation and were expected to release information about the assailant and the possible motive.
Chief of the liberal FDP party, Christian Lindner, voiced his grief about his friend on Twitter, saying that “once again we ask ourselves what sort of world are we living in.”
He was married with four children.
His father, Richard von Weizsaecker, was considered one of Germany’s great post-war political figures.
The elder Weizsaecker was president of West Germany from 1984 to 1990 and then held the same position in united Germany from 1990 to 1994.
He was previously a German deputy in the lower house of parliament for the CDU now led by Chancellor Angela Merkel, and mayor of West Berlin.
He died in 2015.