Berlin is the right first German trip — wide, weird, walkable, English-friendly, deep enough for a full week. Once you've done Berlin, the rest of Germany unfolds: Bavaria's beer culture, Hamburg's port-city character, the Rhineland, the Schwarzwald.
This is a guide to picking the second one based on what you want.
Munich
The most-visited German city after Berlin, in part because of Oktoberfest, in part because Munich is the gateway to the Alps. The city itself is more polished and conservative than Berlin — Bavaria is its own thing — and the food culture is heavier (sausages, pretzels, beer halls).
Stay in Glockenbachviertel rather than Altstadt. Same walking distances, dramatically more interesting evenings, and the gay-friendly scene is one of central Europe's best.
Best for: beer-and-pretzel weekends, first-time Bavaria, Alps base.
Hamburg
Northern German port city, dramatically different from southern Germany — colder, sharper, more Hanseatic. The Reeperbahn nightlife is famous; the Elbphilharmonie is the architectural icon; the Sternschanze food district is excellent.
Stay in Sternschanze. Walking distance to the Reeperbahn but vastly nicer at street level.
Best for: water-and-architecture trips, music and indie food scene, North Sea / Baltic combination travel.
Cologne
Most underrated of the German big-five for travelers. Cathedral is dramatic; the city itself is mid-tier-interesting. The catch: the Belgian Quarter is one of Germany's coolest neighborhoods.
Stay in Belgisches Viertel, not Altstadt. Same train access; vastly better evenings.
Best for: combined Cologne + Düsseldorf trips, Rhine river trips, weekenders from London/Paris.
Dresden
Saxon Baroque elegance, rebuilt from scratch after WWII, the Frauenkirche, the Zwinger. Smaller than Munich/Hamburg/Cologne and more focused as a sights trip. Genuinely one of the most beautiful cities in Germany.
Best for: art-and-architecture trips, classical music focus, eastern Germany road trips.
Heidelberg
Small (160k), university town, the romantic-Germany cliché in concentrated form. Castle, riverside walks, Old Town. Best as a 2-day stop on a longer trip, not as a sole destination.
Best for: family trips, retirees on a romantic short stay, students.
Frankfurt and Stuttgart
Both are functional rather than charming. Stay only if you're working there or have a specific reason. Frankfurt's Sachsenhausen has a small Old Town worth a single dinner. Stuttgart is car-industry-functional.
The Schwarzwald (Black Forest)
Not a city but a region. Freiburg as the city base, then drive or train to the smaller towns (Triberg, Baden-Baden). Beautiful, unusual for Germany — wine and cuckoo clocks rather than beer and pretzels.
Best for: rental-car trips, hiking weekends, autumn travel.
The simple version
Active beer-culture weekend: Munich.
Port-city character and indie food: Hamburg.
Underrated value with great neighborhood: Cologne.
Beauty over scale: Dresden.
Region over city: Schwarzwald, with Freiburg as base.