Generally, citizens of the European Union (EU), the European Economic Area (EEA), and Switzerland may enter, stay, and work in Germany without any visa. They only have to register at the local registration office (Einwohnermeldeamt), which issues a declaratory residence permit if their stay in Germany exceeds 90 days.
Citizens of non-EU countries generally require a visa to enter, stay, and work in Germany.
For short-term stays in Germany (stays not exceeding 90 days per six-month period starting from the inital date of arrival) a Schengen visa is needed for entry into Germany. A schengen visa is generally sufficient for most steps required to establish a business in Germany.
Is the duration of the stay exceeding 90 days (per six-month period) or is a (self-employed or gainful) occupation taken up, all non-EU citizens require a residence permit (Aufenthaltserlaubnis) or settlement permit (Niederlassungserlaubnis). For this purpose, the German embassies or consulates issue a national visa for entering Germany which is "transferred" into a residence or settlement permit in Germany.
Nationals of certain countries do not require a visa for entry into or short-term stays in Germany. The Federal Foreign Office (Auswärtiges Amt) provides detailed information on entry requirements into Germany for different countries.