Due to the recent news of Germany abolishing tuition fees on a national level I thought I could share my experience as a non-EU foreigner (American) going through the German university application process. Warning: If you expect this process to be easy, you're absolutely wrong.
Note: If you from Australia, Chile, Hong Kong, Israel, Japan, South Korea, New Zealand and Taiwan and are between 18 and 30 you can get a 1 year working holiday visa. If you're Canadian and between 18 and 35 you can get a 1 year working holiday visa (as long as you show proof of sufficient funds for a few months). This means you can move to Germany for a while before applying.
Step 1: Find a German University that offers a program you're interested in.
Germany, unlike the United States, requires you to choose your degree program before enrolling. You do not just take a little of this and a little of that until you decide what to do. Most undergraduate degree programs in Germany are taught in German, not in English. Here is a list of German university programs in English. Here is a list of all German university programs.
Step 2: Organize your needed materials to apply. Ex: High school diploma, SAT scores, ACT scores.
If you did not graduate with at least a 3.5 GPA, and get high scores on your SAT or ACT with writing, turn back now. German universities only let in a fraction of international students for each German student, because they want to educate their citizens first. For the degree program I selected at HTW in Berlin they allowed a total of 50 students in each year and only 7 were allowed to be international.
Step 3: Submit a uni-assist.
International students wishing to study in Germany must submit their applications via Uni-Assist. It costs 75euro for the first university application, and 15euro for each additional one for the same semester. If you wish to apply to another program for a later semester you must pay 75euro again. (75EUR is roughly $95.) From my experience uni-assist takes a loooooooooong time. My process was streamlined because I lived in Germany and was able to drop off my applications in person at the office.
Step 4: Wait.
Now you wait to find out if you were accepted. Unlike the United States, you will NOT find out months before the semester begins. Most likely you'll find out 1 month or so before. This will make moving to Germany a bit rushed.
Step 5: The response.
You will receive a response from your university as to whether or not you were accepted. If you weren't, sorry. It's a tough process. You can try again, but honestly I would just forget it and try another country if you MUST study in Europe (The Netherlands offers MANY courses in English, but is not free). If you were accepted, congratulations! Now your headaches really begin!
Step 6: The visa.
To receive a student visa in Germany you must be enrolled in a university. Once you've received your acceptance letter you can accept the spot and have to pay fees. What do you mean fees? Germany just got rid of their fees! Yes, they got rid of their tuition fees, but not the other ones. You still have to pay a few hundred Euro per semester for student organizations and your train ticket. It is worth it though, the ticket comes at a highly discounted price.
Once your fees are paid you will get proof from your university that you are enrolled. Now comes the fun. If you're in your home country you contact the German embassy/consulate to start the visa process. If you're in Germany.. lucky you! You get to go to the Auslaenderbehoerde! What is the Auslaenderbehoerde? Well, it's the first German word I learned to spell in my sleep. They are the foreign office tasked with helping us non-EU citizens get visas. And boy are they a friendly bunch!
To get a student visa in Germany you will need proof that you can sustain yourself. You need roughly 8000EUR (roughly $10,000) in your German bank account at the beginning of the school year, each year. What does this mean? Either your parents need to sign a statement that they will 100% support you and give proof with bank statements showing they have enough income to give you the money. You can also get scholarships (more on this in a second), get a loan (from Germany, which is hard to do), or have a permanent German resident (citizen or not) sign a declaration that they will financially support you. Keep in mind, German degree programs last between 3 and 4 years, so you will need in total $30,000 or $40,000 to just get your visa for each of the years.
You NEED health insurance. Your university can help you get this sorted.
Once you have all of this covered: Congratulations! Time to move to Germany!
FAQs
What about scholarships?
Germany offers very few scholarships, especially for undergraduate studies. You can find some at the DAAD, but prepare to be disappointed.
So I got accepted and my visa is sorted out, what about living situations?
German universities typically do not offer student housing. Some do, but the amount of places is very limited and it fills up very fast. Most likely you'll need to find a WG (apartment share) in the city where you're studying. You can search for a WG here. In most cities these fill up very fast and you will need to go for an interview. You'll have a difficult time finding a place to live when you're not in the country.
$10,000 per year? Will this be enough for me to go out and party?
Simply put: No. This will cover your living expenses, health insurance, and food costs.
What? So then how am I supposed to do things?
Luckily, on a student visa you can get a job. Only a part time job, but still. You can work either 90 full-time days a year or 180 part-time days. Finding a job will be difficult if you don't speak German and do not live in a major international city. Berlin would be the easiest to find work without needing to speak German. But be warned, English is a dime a dozen. You are not unique because you speak English.
Do I need to speak German?
Short answer: Yes. Long answer: Yeeeeeeeeeeeeeeesssssssssss. While many of your friends you make at school will speak English, you'll need at least basic German to get by in every day life. Important documents must be done in German, bank accounts are opened in German, rental agreements are usually in German, and obviously people around you will speak German. Speaking some German is not enough. It might be if you want to move to Germany and never do anything other than hang out with other English speakers, but if you want to really appreciate the country and culture, learn some damn German.
It has been a few years since my application procedure, so please feel free to correct me if I have misremembered anything. If there's anything I've missed, please add it as well.
List of important resources
DAAD - Deutscher Akademischer Austausch Dienst - German Academic Exchange Service
Uni-Assist
Study-In-DE
Study in Holland (just because!)
I will end this by saying Germany is a fantastic country. I lived there for years, made friends for life, and have wonderful memories. I miss it every day with every fiber of my being and hope some day I'll be back. Studying in Germany is much more difficult and more rigid than the US. You'll be in class 5 days a week and for most of the day. Don't eat out often, and buy beer from the grocery store and you'll be fine.
Edit: Thank you everyone for the feedback. There is tons of great info in the comments, so I urge everyone to read them! I would like to clarify that not every experience will be 100% like mine. Hopefully you won't take a hour and a half u-bahn and bus ride to Uni-Assist only to realize you forgot your paperwork at home!
If you have any specific questions please feel free to shoot me a PM and ask away! If I can't answer your question I'll try to point you in the direction of someone who can.
I am in no way an expert at this process nor am I associated with any universities.
Edit 2: I am still receiving many PMs from this post. It seems the main point I'm trying to make is lost on many of you so here it is in back and white: This will NOT save you money. You need about $15,000 PER YEAR just to survive. You cannot get a loan. You need to have the money in the bank or have your parents pay to keep you going. If you happen to have about $60,000 in the bank then just go to undergrad in the US, take German classes, and do your master's in Germany.