Almost everyone else will need a visa and everyone will need a residence permit. If you are not from the EU, EEA, Switzerland, or one the countries listed above, you will probably need to apply for a Schengen visa to enter Germany and stay up for three months (90 days) or for a permit called a 'residence title' if you want to stay for longer than three months and/or work here.
Citizens from some countries, including Australia, Canada, Israel, Japan, the Republic of Korea, New Zealand and the United States of America, don't need a Schengen visa to enter Germany for stays of up to three months (90 days) but will need to apply for a residence permit within that three months if they wish to stay longer or to work.