A man called police shortly after 12.45pm (1145 GMT) and told them he had killed several people in the south-western town of Rot am See, regional police chief Reiner Moeller said.
Police kept the man on the line and, when they arrived at the scene several minutes later, arrested a 26-year-old German national as the suspect in the killings, Mr Moeller said.
Officers found the bodies of six people - three women and three men - in and behind a building where a bar is located.
The suspect's mother and father were among the dead, the police chief said.
Another two people were hurt and one of them has life-threatening injuries, Mr Moeller said.
The suspect also threatened two children, aged 12 and 14.
He had a licence to own firearms as a shooting club member, Mr Moeller said.
The police chief said the motive is not known but authorities are treating it as a "family drama".
Rot am See is located about 170 kilometres (105 miles) north west of Munich.
It is a town of some 5,300 people in a rural area.