Prague’s culinary scene runs the gamut from high-end dining spots to casual, good-value cafes and restaurants. Alongside convivial pubs serving up traditional meat and dumplings washed down with a glass of pivo beer, you’ll find a spread of chefs preparing dishes from (or influenced by) the Middle East, Asia, and South America — not to mention a fair number of vegetarian and vegan spots, too.
One of the best times to go out to eat in Prague is in the summer when the riverside and rooftops around the city come into their own. The bulk of the restaurants can be found in the Staré Město, Malá Strana, and Nové Město neighborhoods, but there are also many excellent spots to be found in neighborhoods like Vinohrady and Holešovice.
Here are some restaurants to keep on your list.
Old Town (Staré Město)
La Dégustation Bohême Bourgeoise $$$$: This long-standing temple to fine dining is widely considered one of the city’s best. Run by star chef Oldřich Sahajdák, it’s one of only two Michelin-starred spots in Prague, and it has always been committed to locally sourced and regional cuisine. Dishes span esoteric ingredients such as snails, calf tripe, pigeon, and boar and are served as part of artfully presented multi-course menus (no a la carte). The dining room is intimate but smartly decorated, with seats available at the open kitchen, and the wine list runs from Czech favorites to classics from Austria, France, and Hungary.
Where: Haštalská 18, 110 00 Staré Město, Czech Republic
La Bottega Bistroteka $$$: Part of the well-established La Collezione family in the city (see Aromi below), this trendy and casual bistro offers a popular menu of Italian dishes, from tartare and soups, to fresh pasta and risotto, to delicious meat and fish dishes — think grilled octopus, beef ribs, and steaks, the latter from the in-house butchery. There are also bread and cakes made in-house for dessert, and the breakfasts — especially the eggs with black truffle and avocado toast — are popular too.
Where: Dlouhá 39, 110 00 Staré Město, Czech Republic
Lokál Dlouhááá $$: This centrally located hot spot is a relatively cheap and cheerful place for traditional Czech food. The interior is no-frills but clean and unpretentious, and the menu features dishes like goulash, dumplings, and schnitzel, as well as specialties such as fried cheese and rabbit liver — plus, of course, several types of beer, including Pilsner and Kozel. It’s generally busy but friendly and draws a local crowd as well as tourists.
Where: Dlouhá 33, 110 00 Staré Město, Czech Republic
Malá Strana
Café Savoy $$$: This charming belle-époque venue originally opened in 1893. It was restored in 2005 and now features a classic throwback interior complete with painted ceilings, ornate chandeliers, and custom-made shelving brimming with wine bottles. The menu offers a mix of Czech, Austrian, and French cuisine. It serves breakfast (eggs Benedict, freshly baked croissants) and lunch, as well as elegant dinners that include dishes like quail, slow-roasted duck leg, and oysters. Don’t forget to take a peek at the in-house bakery downstairs, where the cafe makes fantastic desserts and bread daily.
Where: Vítězná 124/5, Vítězná 5, 150 00 Praha, Czech Republic
Hergetova Cihelna $$$: Located on the Vltava riverbank with views onto Charles Bridge, it’s worth coming to this restaurant for the terrace alone. But the food is also delicious, with a decent mix of international and local dishes like roast duck with cabbage and daily fish dishes, but also more casual fare like burgers and pizza. The drinks menu offers Czech beers and Moravian wines and a good range of teas and soft drinks. Hergetova Cihelna is family friendly, too.
Where: Cihelná 2b, 118 00 Malá Strana, Czech Republic
Cukrakavalimonada $$: Located off the main drag that leads to Prague Castle, this charming café has a simple, wood-heavy interior that’s immediately welcoming and two spacious rooms with large windows for some decent people-watching. It’s an excellent stop for any time of day thanks to a good selection of freshly mixed juices and coffees, as well as wines and beers, plus a menu of pasta dishes, fresh, healthy salads, tasty sandwiches and cakes made in-house.
Where: Lázeňská 7, 118 00 Malá Strana, Czech Republic
U Modre Kachnicky $$$: This famed traditional Czech restaurant has the most classic interior imaginable. The antique furniture, upholstered chairs, oriental rugs, framed prints and mirrors lend both an intimate and yesteryear feel. The name translates to the Blue Duck, and indeed duck is a specialty here: Roasted and stuffed with walnuts, grilled with red lentil cholent, or maple-smoked, among other varieties. There’s also roast pork with dumplings, grilled foie gras with grapes, and other trad dishes to feast on, and the wine list is good too.
Where: Nebovidská 460/6, 118 00 Malá Strana, Czech Republic
New Town
Portfolio Restaurant $$$: Set inside a handsome building with large windows, Portfolio matches the top-notch contemporary design — patterned carpets, solid oak tables, swish designer chairs — to an equally modern menu bursting with fresh, seasonal ingredients from Czech producers. Dishes such as redfish fillet and saddle of lamb, as well as vegetarian options, are backed up by a savvy selection of Moravian and Bohemian wines and some memorable desserts — the brownie with wild berry sauce is a firm favorite.
Where: Lannův palác, Havlíčkova 1030/1, 110 00 Nové Město, Czech Republic
Estrella $$: One of the city’s best-known vegetarian spots, Estrella, can be found nearby the New Town’s National Theater. It’s a casual and welcoming place to dine, with vaulted ceilings and plenty of plants. The menu leans toward the seasonal and international, with favorites like a beetroot and tofu burger, quesadilla, Thai curry, and mushroom and saffron risotto. The drinks list features international wines and local craft beers (there’s a wine shop next door). Look out for the daily lunch offers.
Where: Opletalova 29, 110 00 Nové Město, Czech Republic
U Fleku $$: Situated in a charming 15th-century building, this large and welcoming pub doubles as a restaurant and a microbrewery. The sprawling interior covers several rooms, each decorated in traditional themes — an Ancient Czech Hall, a Cabaret Hall, Vaclav’s Room — and there’s a spacious beer garden with its own bar and grill. The menu is as classic as you might expect, with duck, pork, goulash, sausages, and roast chicken all served with sides of dumplings, potatoes, and cabbage. As well as house-brewed beers, U Fleku also offers wines, spirits, and soft drinks. There’s live accordion music in the evenings and a museum located in the former malthouse.
Where: Křemencova 11, 110 00 Nové Město, Czech Republic
Café Slavia $$: This grand café opened the same year as the National Theatre across the street (1881). However, it was restored in an Art Deco style as a nod to artists and intellectuals who met here in the 1920s and 1930s. The venue offers uniformed service, a diverse menu of European classics from Czech to Italian, a classy selection of cakes and wines — and huge windows that look out onto the river and the theater. It’s a great place to while away an afternoon or evening.
Where: 2, Smetanovo nábř. 1012, Staré Město, 110 00 Praha, Czech Republic
Vinohrady and other neighborhoods
Tuan & Lan Pho Vietnam $$: There’s a lot of decent Vietnamese food on offer in Prague, but this is one of the best spots. It’s a simple place with simple seats placed outside in summer. But the dishes — including classics like phở bò, phở gà, and nem lụi, as well as vegetarian items — are hearty and delicious. Note that lunchtimes can get very busy.
Where: Slavíkova 1, 120 00 Praha 2-Vinohrady, Czech Republic
Aromi $$$$: One of the most famous Italian restaurants in town, Aromi can nowadays be found in a new location next to the Divadlo Theatre in Vinohrady. Its minimalist interiors and subtle tones of dark browns, creams, and grays provide a dapper setting for some of the best Italian food in town — certainly in terms of seafood, which is emphasized here. Feast on dishes like pasta and crab meat, seared scallops, or choose classics like lasagna, pasta, risotto, or pop in for breakfast or antipasti in the restaurant’s more casual second room. There’s also a pleasant courtyard, and the wine list is solid too.
Where: Náměstí Míru 1234/6, 120 00 Vinohrady, Czech Republic
SaSaZu $$$: One of the best-known restaurants in Holešovice, this chic pan-Asian spot is set inside a former slaughterhouse that’s been renovated to feature swanky dim lighting and a mix of hip and traditional decorations. The menu is decidedly fusion, covering all of Asia from Thai papaya salad and Balinese monkfish, to Vietnamese soups and red curry beef and shrimp. With DJs and live music from Wednesday to Saturday, great wines, cocktails on offer, and a separate club space right next door, it’s easy to make an evening of it here.
Where: 306/13, Holešovice, Bubenské nábřeží, 170 00 Praha 7, Czech Republic