Citizens of the European Union, Norway, Iceland, Lichtenstein and Switzerland along with their family members do not require any visa. They just need a valid passport or identity card to enter Germany.
Other nationalities can check for the visa requirement details on the website of the Federal Foreign Office. This can be checked using the visa navigator tool on the same website.
Visa application to Germany must be applied for via the German mission abroad (embassy or consulate general) in country of origin. For information regarding the requirements and duration of the visa application, please have a look in the official website of the German embassy in your country.
An overview of the German missions abroad can be found on the homepage of the Federal Foreign Office.