The most popular and widely used website for finding a shared flat (in German Wohngemeinschaft– in short WG) is http://www.wg-gesucht.de/. Create an account, make it interesting, make it personal, include photos, hobbies, sports, etc. Many flats get over 50 requests within the first 3 days, so you need to do something to set you apart from the competitors. Most WGs will have many potential future residents visit them in their flat and in the end decide for the one who best fits into the existing community.
Contacting your future housemates
The usual way is to browse the offers and write a personal message via the website. You will then receive the answer via e-mail.
The good news is: The vast majority of German Students are glad to integrate international students in their flat; they consider it to be an enrichment to know people from other cultural backgrounds, learn new recipes or practice a foreign language.
The bad news is: Some conservative German Students might be feeling offended if you take it for granted, that they understand and reply in English. You can be pretty sure that any German who meets the entrance requirements for university has had at least 8 years of English lessons, but there are people arrogant enough to think that any foreigner should be able to speak German fluently. Most of those have probably never managed to learn any foreign language properly themselves.
Whatever… it is a sign of commitment to write the personal message in German. I realize that this is very difficult, because German is an awful language. Your buddy and fellow students are happy to help you with the writing and correction of your text, just ask. If you are not able to write a German text at all, it makes little sense to pretend differently and have someone else write it, because people will find out once they meet you personally. In this case I would advise you to write the Greeting and one introductory sentence in German as a sign of good will and continue in English.
If you apply for a room in a WG, your contact person is either someone moving out of an existing WG, or one of your future flat mates. So most likely you are communicating with a student. This means that communication is on an informal level. Write “Hi Mario” and not “Sehr geehrter Herr…” and continue by addressing your contact in 2nd person: “du”, “dich”, “dir”
You will have much better chances to get invited for a visit if you write a personal message specially adapted to the announcement. Take up a point made in the community description of the announcement. For example point out a common interest or a common hobby to show that you have actually read and understood the announcement. In my opinion it is alright to copy, paste and reuse some parts of the message like the description about yourself, because you will need to write very many messages to very many people. The last time I had to search for a flat, I was writing over 50 messages and visited 17 flats, until I found a place to stay. As I said – do not give up – all you need is persistency.