This advice article could be a whole lot more concrete
Wanna know why I don't speak German after four years of living here? ;)
Without going out of your way for a language course, the interaction with German in Germany is limited to "by card please", "have a good evening/weekend", "a ticket to Aachen please", and forms/contracts like municipal registration, tax returns, and rental contract. Which are way too complex so you use a translator. Similar for a job in German: without first learning it, you can't get one, so you take an English job and the cycle continues.
Yes, I really need to be taking a language course like yesterday already. I'm aware, but that still would not get me chatting with locals; rather, other immigrants and a teacher or so.
> Or would you try more sociable places like cafés and bars?
When we go to cafés, I'd find it super weird if someone came up to our table to make small talk. Worse than at a bus stop. Bars are afaik for people (mainly teenagers) to get drunk together at but I don't drink so I've not been to one, rather walked past outside and can't say that what comes out of that entrance looks appealing to interact with.
Bars also work, because after a couple of pints everyone gets a bit chatty.
Try parks, bars, college campuses, maybe museums.
complementing them - on anything.
Don't care. you'll never meet them again (if something goes wrong) so if you want something, ask for it. if you have something stupid to say, say it, it's better than nothing.
I did it at the train, bus, street, hostel.
it seems that everyone in their headphones and doesn't want to talk, but people actually like to discover, to learn, to joke. It's just a mask.