EU nationals do not require a visa to enter the Federal Republic of Germany.
All Non-EU citizens require a visa. However, a visa is not required for visits of up to 90 days in an 180‑day period for nationals of those countries for which the European Community has abolished the visa requirement.
You may apply for short stay visas (Schengen Visas) at diplomatic missions of the German Federal Foreign Office.
Please also visit the homepage of „Auswärtiges Amt“ to find a detailed table of all countries requiring a visa and also more information about visa regulations.