While the German rules on citizenship are based on the principle of avoiding dual citizenship, this principle does not apply to children who receive dual citizenship through descent from their parents.
German citizenship law is based on the principle of avoiding multiple citizenships. As a consequence anyone applying for German citizenship will generally be required to give up their other citizenship(s), and German citizens who apply for a foreign citizenship will automatically lose their German citizenship.
There are some exceptions to this principle:
If children acquire more than one citizenship at birth (e.g. through a German mother and a Canadian father or by being born in Canada to German parents), they will not have to decide for either citizenship.
As an example:
German citizens Daniela und Peter came to Canada in 1995. Their son Justin was born in Toronto 1998. Daniela and Peter were both permanent residents in Canada when Justin was born. Justin received the German nationality through descent from German parents, and the Canadian citizenship through birth on Canadian territory. He will remain German-Canadian citizen for life, unless he (or his parental guardian(s), while he is still a minor) decides to actively change his citizenship.
Please note that children born outside of Germany do not automatically acquire German nationality by birth if their German parent(s) were themselves born abroad after January 1st, 2000 - unless their parents register the birth with the German competent consulate before the child’s first birthday.
A German citizen who voluntarily acquires a foreign citizenship does not lose his or her German citizenship if he or she received official permission to retain German citizenship (so-called “Beibehaltungsgenehmigung”) before acquiring said foreign citizenship. Please note that you have to receive the “Beibehaltungsgenehmigung” before accepting the foreign citizenship since permission cannot be given retroactively.
More Information on applying for a “Beibehaltungsgenehmigung” can be found (in German language only): Beibehaltung
Anyone applying for German citizenship will generally be required to give up their other citizenship(s). There are exceptions to this rule if the applicant is a citizens of another EU-member state or Switzerland or if the applicant has a German parent as well as in cases of restoration of German citizenship according to art. 116 of the Basic Law.
More Information on naturalization can be found here: naturalization