Top 20 best restaurants in Barcelona (2024)

The vast variety of restaurants in Barcelona does not always make it easy to choose. But of course, you would like some good food or tapas and a nice place to sit down and enjoy. I have compiled a top 20 . From affordable to pricey, tapas to paella: at these places you are guaranteed to eat well!

1. Bar Cañete

Kitchen: Spanish
Price: €40-50 euros per person for main course, drink and dessert
Special features: The open kitchen
Location: Carrer de la Unió 17, El Raval

Bar Cañete is really one of those places where you hang out all night and always order way too much. The tastiest cheeses, Spanish ham and fresh fish makes choosing difficult. There are tapas as well as some larger dishes. The homemade paella is delicious and different every day.

2. Bar del Pla

Kitchen: Tapas
Price: €15-40 euros for a main course
Special features: Authentic interior
Location: Carrer de Montcada 2, El Born

Bar de Pla is hidden away in one of the cozy streets of the El Born neighborhood. The ambiance is simple, with large wine barrels as tables and a long bar where locals sit early in the morning with their beer. All the classic tapas are on the menu, and meat and fish lovers in particular will find plenty to eat here. The flavor combinations are surprising and delicious!

3. The Green Spot

Kitchen: Vegetarian and vegan
Price: Around €40 euros per person
Special features: The particularly delicious (vegetarian) dishes and beautifully prepared plates
Location: Carrer de la Reina Cristina 12, Barceloneta

Anyone who loves healthy (and vegetarian) food is at the perfect place here. Thanks in part to The Green Spot’s hip Instagram-worthy decor and delicious food, you’re sure to have a fun evening. Be sure to try the fried eggplant with miso sauce or the jackfruit tacos. By the way, one of the locations also has a small club where you can dance after dinner.

4. Petra

Kitchen: Spanish
Price: €14 euros for a main course
Special features: Seasonal products
Location: Carrer dels Sombrerers 13, El Born

During lunch you can get great afternoon menus at this little place, definitely a favorite among locals (tourists do not know their way to this cute restaurant). Dishes are inspired by Mediterranean cuisine such as salads, pastas, meat, fish and vegetarian dishes. When the weather is nice, they sometimes set up a table outside, but otherwise it’s always a cozy affair inside.

5. La Pepita

Kitchen: Creative tapas
Price: €20-50 euros
Special features: Classic tapas with a twist
Location: Carrer de Còrsega 343, Eixample

On the large mirrored wall behind La Pepita’s long-throw bar are written the creative tapas of the day and a selection of wines. The ham croquettes are among the best in town.

6. Casa Leopoldo

Kitchen: Spanish
Price: €15-25 euros for a main course
Special features: The history. And the squid is so good
Location: Carrer de Sant Rafael 24, El Raval

In the heart of El Raval, Casa Leopoldo reopened its doors in early 2024. This revamped classic pays tribute to the original restaurant, founded in 1929 by señor Leopoldo. It was his granddaughter, Rosa Gil, a local born and raised, who turned it into a beloved institution. Her legacy lives on in every corner of Casa Leopoldo. The dishes, inspired by her traditional recipes, have been given a modern twist. The squid is outstanding, and the Spanish oxtail is just as impressive. Much of the original interior, including the beautiful tiles, remains, now complemented by fresh colors and contemporary touches. A must-visit!


If you would like a paella by the sea, definitely check out our Top 10 restaurants for eating paella in Barcelona 👇 


7. Disfrutar

Kitchen: Modern Catalan cuisine
Price: From 120 euros per person for a menu without drinks
Special features: Two Michelin stars
Location: Carrer de Villarroel 163, Eixample

Disfrutar is Spanish for enjoy and you will certainly do that here. Not for nothing did the two-star restaurant secure a spot in just about every list of best restaurants in Europe and the world. Menus start at 120 euros per person (without drinks) and reservations are obviously a must.

8. Gallito

Kitchen: Mediterranean and Spanish
Price: Between €16-30 euros for a main course
Special features: Under the W Hotel, with a stunning view of the sea
Location: Passeig del Mare Nostrum 19, 21, Barceloneta

Gallito is the perfect spot for a stylish lunch or dinner by the beach. Located just below the W Hotel, this restaurant offers delicious tapas, top-quality meat and seafood dishes, and a paella that’s my absolute favorite! Highly recommended. Enjoy a beautiful terrace with stunning sea views as you savor your meal, whether it’s lunch or dinner.

9. Can Framis

Kitchen: Tapas, cheeses, ham en salades
Price: €4-17 euros for a tapas dish
Special features: The delicious house-made sangria
Location: Rda. de Sant Pere 70, El Born

Looking for an authentic Spanish experience? Head to Can Framis. The delicious tapas won’t disappoint, and the decor strikes the perfect balance between traditional and modern. My personal favorites are the roasted cauliflower and tuna. Another highlight: the wide selection of cheeses, perfect as a starter! And don’t forget to try the house-made sangria—the white one is absolutely divine!

10. Casa Rafols

Kitchen: Spanish, tapas and larger dishes
Price: Around €40 euros per person
Special features: The speakeasy cocktail bar with entrance through a mirror next to the restrooms
Location: Rda. de Sant Pere 74, Eixample

At Casa Rafols, you are sure to have a great evening. The beautifully decorated space, delicious food and atmosphere are great. All the products are homemade and the choice is vast. For those who love to drink and dance, this is also the place to be. In the hidden speakeasy bar downstairs in the restaurant, listen to jazz while enjoying a cocktail.

11. My Fucking Restaurant

Kitchen: Tapas and small dishes to share
Price: €25-30 euros for tapas, a drink and dessert
Special features: The showcooking experience at the bar
Location: Carrer Nou de la Rambla 35, El Raval

A naughty name, but a fine setting and great cuisine: My Fucking Restaurant is definitely one of my favorites. The menu features tapas and small dishes following traditional recipes, but with a modern twist. Recommendations include the burrata, the pulpo (squid) and the osso bucco croquettes. If you take a seat at the bar, you can also experience a true show-cooking experience: here the cold dishes are prepared in front of you.

12. Cecconi’s

Kitchen: Italian
Price: €16-38 euros for a main course
Special features: The spectacular interior
Location: Passeig de Colom 20, El Gòtic

One of the most delicious and beautiful Italian restaurants in Barcelona, Cecconi’s is located on the ground floor of the Soho House club. You don’t need to be a member to book a table here. The restaurant is stylishly decorated with an impressive bar, and you can watch as the freshest pasta, risotto, and pizza are prepared right before your eyes at the tables facing the kitchen. It’s not the cheapest Italian spot, but Cecconi’s is definitely worth it.

13. Mont Bar

Kitchen: Creative
Price: €145 euros for a set menu, à la carte tapas starting from €6
Special features: Michelin-starred tapas
Location: Carrer de la Diputació 220, Eixample

A Michelin-starred tapas bar, Mont Bar may not feel like a high-end dining establishment—it’s a genuinely cozy and unpretentious tapas spot—but the dishes served here are of the highest quality. The tasting menu, featuring 16 innovative and original creations, is priced at €145. À la carte tapas start at €6.

14. Terraza Martinez

Kitchen: Mediterranean and Catalan
Price: €16-29 euros for a main course, drink, and dessert
Special features: One of the most beautiful terraces in the city
Location: Ctra. de Miramar 38, Montjuïc

For rice dishes like paella and the best grilled platos a la brasa, Terraza Martinez is a hidden gem on Montjuïc Hill with stunning views of the Barcelona harbor. It’s undoubtedly one of the most beautiful terraces in the city. Start with a few tapas to share and then indulge in one of their fantastic paellas.

15. Can Fisher

Kitchen: Spanish, lots of fish
Price: €20-40 euros for a main course
Special features: The location: in front of the beach
Location: Av. del Litoral 64, Poblenou

When visiting a vibrant city, enjoying paella with a sea view is a must. At Can Fisher, you’re guaranteed the experience you’re looking for. The paellas here are truly mouthwatering, and if you’re lucky, you might get a spot on the lovely terrace overlooking the beach. The grilled seafood dishes are also fantastic. Be sure to start with the chipirones.

16. Fismuler

Keuken: Spanish and Catalan
Price: €30-50 euros
Special features: An initiative by chefs trained at El Bulli
Location: Carrer del Rec Comtal 17, El Born

Fismuler definitely deserves a spot among Barcelona’s top restaurants. Located in the El Born district, this restaurant is the brainchild of three chefs trained at El Bulli, once the world’s best restaurant. The interior is simple yet stylish, and the food is fantastic. With fresh ingredients and a rotating menu, most dishes are inspired by classic Spanish and Catalan flavors. I don’t usually order dessert, but the cheesecake here is irresistible.

17. La Balabusta

Kitchen: Middle Eastern and Mediterranean
Price: €20-50 euros
Special features: Many vegetarian options and a blend of flavors from various Middle Eastern cuisines
Location: Carrer del Rosselló 180, Eixample

Incredible food in a casual setting. The Israeli-born chef at La Balabusta creates fantastic Middle Eastern dishes that blend Mediterranean, Sephardic, and North African flavors. There are plenty of vegetarian options available.

18. Xiringuito Escribà

Kitchen: Spanish, seafood dishes
Price: €15-40 euros for a main course
Special features: The montaditos and paella on the beach
Location: Av. del Litoral 62, Poblenou

On Bogatell Beach, near the Poblenou district, the son of Barcelona’s renowned pastry chef Christian Escribà runs the beachside eatery Escribà. It’s a great spot for seafood paella, with many other seafood dishes also on the menu. The restaurant is stylishly decorated with Mediterranean influences, making it a lovely place to end a warm summer day.

19. Gresca

Kitchen: Catalan and Spanish
Price: €12-36 euros for a main course
Special features: Simple dishes with exceptionally delicious flavor combinations
Location: Carrer de Provença, 230, Eixample

Gresca is a small, unpretentious restaurant where you can enjoy truly exceptional food. The lunch menu costs just over twenty euros. There are various tasting menus available, featuring simple yet seasonal ingredients. Expect unique combinations and innovative dishes that will delight your palate.

20. Xemei

Kitchen: Italian
Price: €29-36 euros
Special features: A delightful Italian restaurant, and a personal favorite
Location: Passeig de l’Exposició 85, Montjuïc

My favorite Italian restaurant is tucked away from the hustle and bustle of the city center and far from the tourist areas. If you love Italian cuisine but aren’t looking for pizza, this is the place for you. Xemei was opened by two Venetian twin brothers who truly understand quality. The personal and relaxed atmosphere makes dining at Xemei a memorable experience. Reservations are recommended depending on the day and time.

Yes! You came this far!

My name is Annebeth, I’m originally from The Netherlands and I have been home in Barcelona for 22 years. As an online guide, journalist, author of many travel guides about the city and co-owner of bicycle tour company El Ciclo, Barcelona is my great inspiration and I am happy to share everything I know (and learn) with you. You will also find personal tips and recommendations so you can experience that authentic, local and unique Barcelona feeling once you’re here.