Since 1991, Germany has entered the ESC as a reunified Germany. Berlin is no longer divided, and is the capital for the whole of Germany, therefore I guess ESC 2011 will be in Berlin.
There's no real requirement for ESC to come from a capital city - though often they do.
The last time I think that a non-capital was the host city was Istanbul in 2004 (Ankara is the capital of Turkey), and before that in 1999 the event was hosted in Jerusalem rather than Tel-Aviv (though I'm not going to go into those politics!), and in 1998 it was in Birmingham not London...
There is obviously the issue in smaller countries of venue choice - often the only venue large enough is in the capital (and in a few cases the capital is NOT the largest city or the obvious choice)
When the contest was smaller it was routine for the event NOT to come from the capital. The UK hosted in London a couple of times (RAH, Wembley Arena, Television Centre?) but also hosted in Birmingham, Brighton, Harrogate and Edinburgh.
Norway have hosted in Bergen as well as Oslo, and Sweden hosted in Gothenburg as well as Stockholm. Ireland didn't always host in Dublin - Millstreet was the venue one year in the 90s.