Best Restaurants in Colombo: Sri Lanka's Capital

· 5 min read eating-out
A spread of Sri Lankan dishes including hoppers, dhal, and coconut sambol at a Colombo restaurant

Book an experience

Food tours & cooking classes

A guided food tour covers more ground than eating solo, and you learn the backstory.

Colombo’s restaurant scene is bigger and more varied than most first-time visitors expect. The capital has always had strong street food culture, and over the past decade that’s been layered with a wave of proper restaurants - rooftop bars, fusion spots, and a handful of places doing Sri Lankan cuisine at a standard that would compete anywhere in Southeast Asia.

This guide covers the restaurants we’d actually send someone to, split by budget and area.

Street Food and Rice and Curry (Under LKR 500)

Pettah Market Area is where Colombo eats cheapest and most honestly. The streets around the main market (especially Manning Market and Olcott Mawatha) are lined with short-eat vendors selling isso vadai (prawn fritters), mutton rolls, and kottu roti from about LKR 150 per piece. Nothing here is designed for tourists; everything is designed to be fast and filling.

For a full rice and curry plate, look for the small family-run kade (small shops) rather than the sit-down places. A plate with four or five curries, dhal, pol sambol, and rice runs LKR 300–400. Papadum and a glass of water come without asking.

Majestic City Food Court (Bambalapitiya) is an underrated option - mostly locals, meals around LKR 400–600, and enough variety to eat differently every day for a week.

Mid-Range Colombo Restaurants (LKR 1,000–3,000 per person)

Ministry of Crab (Dutch Hospital, Colombo 1) is the most famous restaurant in Sri Lanka and justifiably so. Founder Dharshan Munidasa built it around Sri Lankan lagoon crab, and the dishes - crab in garlic butter, crab curry, and the truffle oil crab - are genuinely exceptional. Expect to pay LKR 4,000–8,000 per person depending on crab size. Book two weeks ahead; walk-ins are rare. This sits at the upper end of mid-range into fine dining, but it’s worth flagging here because it’s so frequently recommended.

Nuga Gama (Cinnamon Grand Hotel, Colombo 3) re-creates a traditional Sri Lankan village setting inside the hotel courtyard. The rice and curry buffet (LKR 2,500 approximately) covers the widest range of regional dishes in one sitting: Jaffna crab curry, black pork, jackfruit preparations, and a proper hopper station. Lunch is the better value option.

The Lagoon (Cinnamon Grand) is more affordable than Ministry of Crab for seafood. Set menu options run from LKR 2,000–4,000. The lobster is crowd-pleasing rather than sophisticated, but the setting - an open-air seafood counter by the pool - is comfortable and the portions are generous.

Café Kumbuk (Colombo 7) is a good all-day option - brunches, salads, rice bowls, and smoothies in a garden courtyard. Popular with expats and Sri Lankan professionals. Expect to pay LKR 1,000–2,000 per person. The Sri Lankan breakfast (egg hopper, dhal, seeni sambol) is a strong choice in the mornings.

Greenlands Hotel (Colombo 6, Wellawatte) is not a hotel in the usual sense - it’s a long-standing South Indian vegetarian restaurant. Banana leaf meals on weekends are the draw: unlimited rice, three or four vegetable curries, rasam, and papadum for around LKR 800. The dosa and idli at breakfast are excellent.

Upscale and Special Occasion (LKR 4,000+)

Kaema Sutra (Hilton Colombo, Colombo 1) focuses on Sri Lankan cuisine done with more technique than you’d find at most traditional restaurants - black pork curry, prawn biryani, pol roti with accompaniments. The river views from the upper floors add to the experience. Expect LKR 5,000–9,000 for two.

Tintagel (Reid Avenue, Colombo 7) is in what used to be the Bandaranaike family residence, now a boutique hotel and restaurant. The setting alone - old Dutch-colonial house, polished wood floors, artworks - justifies one visit. The menu mixes Continental and Sri Lankan, with fish and lamb dishes running around LKR 2,500–4,000 per main. Afternoon tea is one of the better versions in the city at around LKR 2,000 per person.

Gallery Café (Alfred House Road, Colombo 3) is the other heritage-dining option worth knowing - a 19th-century property turned restaurant and gallery. The food is reliable rather than outstanding, but the setting (open courtyard, baobab tree, old architectural details) is beautiful and the cocktail list is good. Mains run LKR 2,000–3,500.

Hoppers After Dark

Hoppers - bowl-shaped rice flour crepes eaten with coconut milk and accompaniments - are best eaten late in Colombo, when the street stalls set up from around 7pm. The stretch of Duplication Road in Bambalapitiya has several hopper vendors doing solid work from mobile carts. An egg hopper costs LKR 80–120; a milk hopper around LKR 60.

For a sit-down hopper experience with more variety, Upali’s (Colombo 3) has been feeding Colombo for decades - everything from hoppers to ambul thiyal (sour fish curry) to the excellent lamprais. A full meal runs LKR 1,200–1,800.

What to Order Wherever You Go

Sri Lankan rice and curry is not one dish but a composition: rice at the centre, surrounded by three to five small preparations. A balanced plate usually includes a lentil dhal (parippu), one meat or fish curry, one vegetable preparation, coconut sambol (scraped coconut with chilli and lime), and either pol roti or papadum.

Kottu roti is the other essential - chopped flatbread stir-fried with egg, vegetables, and either chicken, beef, or mutton. The sound of the metal blades hitting the griddle is the soundtrack of every Colombo night. Order it at any small restaurant or street stall, and expect to pay LKR 400–700. If you are still choosing where to sleep, search hotels in Colombo and pick a base within easy reach of these places to eat.

Frequently Asked Questions

What is the best area to eat in Colombo?
Colombo 3 (Kollupitiya) and Colombo 7 (Cinnamon Gardens) have the highest concentration of good restaurants - everything from street food carts to upscale dining. Pettah is the place for the cheapest and most authentic local eats.
How much does a meal cost in Colombo?
A street-side rice and curry plate costs around LKR 300–500 (approximately USD 1–1.50). A mid-range restaurant with a full meal runs LKR 1,500–3,000 per person (approximately USD 5–10). Fine dining goes from LKR 4,000 upwards.
Is it safe to eat street food in Colombo?
Yes, broadly. Busy stalls with high turnover are generally safe - the food is freshly cooked and the volume means nothing sits around. Stick to cooked food rather than cut fruit from unrefrigerated trays.
Do Colombo restaurants serve alcohol?
Many mid-range and upmarket restaurants do, though Sri Lanka has dry days on poya (full moon) days each month when alcohol cannot be served or sold. Check the calendar if you're planning around a specific night.

Ready to explore?

Browse hundreds of tours and activities. Book securely with free cancellation on most options.

Browse on GetYourGuide →

Best price guaranteed: same price as booking direct. We earn a small commission at no extra cost to you.