ADVERTISEMENT

We went on a Michelin food crawl in Bangkok—here's what happened

In a city of great food, here are the winners

Published Feb 29, 2024 12:25 am

At A Glance

  • In between marathon bargain shopping in Pratunam and watching fabulous drag shows in Silom, we took up the ambitious challenge to dine at as many Michelin-recommended restaurants as we could.

By JELLYN GUECO

With the opening of direct flights from Clark Airport, traveling to Bangkok just to eat and shop for the weekend has become more accessible. When one of my best friends, Hermie, whom I hadn’t seen for six years invited me to a spontaneous meetup in Bangkok, it was a no-brainer for me.

As both of us had been to Bangkok before, we made a conscious choice to forego the usual tourist attractions and focus our energies on what we both love—food! A flight on Thursday night followed by a return trip on Sunday meant a compact threeday period to indulge in the city’s gastronomic delights.

In between marathon bargain shopping in Pratunam and watching fabulous drag shows in Silom, we took up the ambitious challenge to dine at as many Michelin-recommended restaurants as we could realistically manage and, of course, afford.

Check out the mouthwatering details of our unforgettable Michelin food crawl and take notes for your next Bangkok trip!

01 Jay Fai Crab Omelet Close Up.JPG

JAY FAI One Michelin Star

We had serious doubts if we were willing to go through the arduous task of scoring a table at Raan Jay Fai. Since we were only in the city for the weekend, we knew that if we wanted a taste of their famous crab omelet, we had to be prepared to queue for our turn.

On our first morning in Bangkok, we eagerly arrived at the restaurant at 7:30 a.m., feeling confident we’d be the first ones there, only to be greeted by a long line of people. Undeterred, we got our number and had to wait 3.5 hours before we were given the menu to place our order.

At that point, we were starving so we let our stomachs decide for us, ordering not one but two crab omelets, prawn fried rice, and drinks to make the wait worth it. And the wait continued because it took another 1.5 hours before we were finally served our meal.

Now the question on everybody’s mind: Is it worth it? Absolutely. There’s probably enough crab in that unassuming 1,400 baht fried roll to trigger a seafood allergy (even if you don't have one).

We feasted on chunks and chunks of succulent and flavorful crab making us forget we spent a total of five hours and over $100 just to eat at this streetside eatery! It’s something we would probably never do again but we're happy to tick it off our bucket list.

sticky mango rice.jpg

K. PANICH Michelin Bib Gourmand

We’ve had tons of mango sticky rice before, but if Michelin says you need to try it at K. Panich, then who are we to argue? Visually, it looked similar to what we’d had before but one bite and we understood how it was different. Unlike the supermarket-variety you can find anywhere in the city, the sticky rice at K. Panich was not sweet at all. It was in fact a bit salty. But when paired with the ripe and juicy mangoes, it created a perfect balance of flavors that made us want to have one more serving. Or maybe two.

Thipsamai Pad Thai.JPG

THIPSAMAI Michelin Bib Gourmand

Going to Thailand and not eating pad thai should be a crime. And according to Michelin and the BBC, Thipsamai is the best place to have this dish. Initially, our plan was to visit the original restaurant just beside Jay Fai, but upon discovering a branch at Siam Paragon, we chose to dine there instead. I’m not sure if it was the crowded food court ambiance or my super tired feet, but I found the pad thai somewhat underwhelming. While it boasted clean and pleasant flavors, it was just okay for me. It was not the pad thai I would rave about.

04 Ruen Ton Hainanese Chicken Rice.JPG

RUEN TON Michelin Bib Gourmand

Even if we were in Thailand, we knew that eating Thai food non-stop was not something our stomachs could handle. On our second day, our high school and college friend, Leah, who is now a Bangkok expat, treated us to dinner at Ruen Ton at Montien Hotel. As we reminisced about our younger days in Angeles City and Diliman, all three of us enjoyed the signature dish—Hainanese Chicken Rice. The chicken, served with fragrant rice, broth, and dipping sauces, was cooked flawlessly. The portion was so generous that both of my friends couldn’t finish their meals. As for me? Let’s just say I enjoyed every last bite.

05 Blue Alain Ducasse 3.JPG

BLUE BY ALAIN DUCASSE One Michelin Star

For our last lunch in Bangkok, we decided to go all out and dine at Blue by Alain Ducasse, the world’s number one chef with 21 Michelin stars under his belt. But really, being avid fans of the reality show Top Chef, we couldn’t pass up the opportunity to dine at a restaurant helmed by one of the show’s most renowned guest judges.

The Menu Escale at 2,950 baht for five courses was an indulgence. From the amuse-bouche to dessert, every dish was beautifully presented. I can’t quite say that my (crispy pata-loving) palate is refined enough to fully appreciate all the intricate flavors, but I did enjoy the overall experience. It was definitely a luxurious way to end our food crawl in Bangkok.

06 Lukkaithong Stewed Pork Belly.JPG

LUKKAITHONG Michelin Bib Gourmand

Eating at Lukkaithong was a nice postscript to our Bangkok food crawl. I chanced upon this restaurant near Gate F at Suvarnabhumi Airport while waiting for my flight back to Manila. Luckily, I still had some baht left and I was able to afford the featured dish of stewed pork belly with pickled vegetables. If you find yourself with a couple of hours to spare at the airport, skip the fast food and try this meal instead.

Related Tags

Manila Bulletin Lifestyle Jellyn Gueco
ADVERTISEMENT
.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1561_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1562_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1563_widget.title }}

{{ articles_filter_1564_widget.title }}

.mb-article-details { position: relative; } .mb-article-details .article-body-preview, .mb-article-details .article-body-summary{ font-size: 17px; line-height: 30px; font-family: "Libre Caslon Text", serif; color: #000; } .mb-article-details .article-body-preview iframe , .mb-article-details .article-body-summary iframe{ width: 100%; margin: auto; } .read-more-background { background: linear-gradient(180deg, color(display-p3 1.000 1.000 1.000 / 0) 13.75%, color(display-p3 1.000 1.000 1.000 / 0.8) 30.79%, color(display-p3 1.000 1.000 1.000) 72.5%); position: absolute; height: 200px; width: 100%; bottom: 0; display: flex; justify-content: center; align-items: center; padding: 0; } .read-more-background a{ color: #000; } .read-more-btn { padding: 17px 45px; font-family: Inter; font-weight: 700; font-size: 18px; line-height: 16px; text-align: center; vertical-align: middle; border: 1px solid black; background-color: white; } .hidden { display: none; }
function initializeAllSwipers() { // Get all hidden inputs with cms_article_id document.querySelectorAll('[id^="cms_article_id_"]').forEach(function (input) { const cmsArticleId = input.value; const articleSelector = '#article-' + cmsArticleId + ' .body_images'; const swiperElement = document.querySelector(articleSelector); if (swiperElement && !swiperElement.classList.contains('swiper-initialized')) { new Swiper(articleSelector, { loop: true, pagination: false, navigation: { nextEl: '#article-' + cmsArticleId + ' .swiper-button-next', prevEl: '#article-' + cmsArticleId + ' .swiper-button-prev', }, }); } }); } setTimeout(initializeAllSwipers, 3000); const intersectionObserver = new IntersectionObserver( (entries) => { entries.forEach((entry) => { if (entry.isIntersecting) { const newUrl = entry.target.getAttribute("data-url"); if (newUrl) { history.pushState(null, null, newUrl); let article = entry.target; // Extract metadata const author = article.querySelector('.author-section').textContent.replace('By', '').trim(); const section = article.querySelector('.section-info ').textContent.replace(' ', ' '); const title = article.querySelector('.article-title h1').textContent; // Parse URL for Chartbeat path format const parsedUrl = new URL(newUrl, window.location.origin); const cleanUrl = parsedUrl.host + parsedUrl.pathname; // Update Chartbeat configuration if (typeof window._sf_async_config !== 'undefined') { window._sf_async_config.path = cleanUrl; window._sf_async_config.sections = section; window._sf_async_config.authors = author; } // Track virtual page view with Chartbeat if (typeof pSUPERFLY !== 'undefined' && typeof pSUPERFLY.virtualPage === 'function') { try { pSUPERFLY.virtualPage({ path: cleanUrl, title: title, sections: section, authors: author }); } catch (error) { console.error('ping error', error); } } // Optional: Update document title if (title && title !== document.title) { document.title = title; } } } }); }, { threshold: 0.1 } ); function showArticleBody(button) { const article = button.closest("article"); const summary = article.querySelector(".article-body-summary"); const body = article.querySelector(".article-body-preview"); const readMoreSection = article.querySelector(".read-more-background"); // Hide summary and read-more section summary.style.display = "none"; readMoreSection.style.display = "none"; // Show the full article body body.classList.remove("hidden"); } document.addEventListener("DOMContentLoaded", () => { let loadCount = 0; // Track how many times articles are loaded const offset = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // Offset values const currentUrl = window.location.pathname.substring(1); let isLoading = false; // Prevent multiple calls if (!currentUrl) { console.log("Current URL is invalid."); return; } const sentinel = document.getElementById("load-more-sentinel"); if (!sentinel) { console.log("Sentinel element not found."); return; } function isSentinelVisible() { const rect = sentinel.getBoundingClientRect(); return ( rect.top < window.innerHeight && rect.bottom >= 0 ); } function onScroll() { if (isLoading) return; if (isSentinelVisible()) { if (loadCount >= offset.length) { console.log("Maximum load attempts reached."); window.removeEventListener("scroll", onScroll); return; } isLoading = true; const currentOffset = offset[loadCount]; window.loadMoreItems().then(() => { let article = document.querySelector('#widget_1690 > div:nth-last-of-type(2) article'); intersectionObserver.observe(article) loadCount++; }).catch(error => { console.error("Error loading more items:", error); }).finally(() => { isLoading = false; }); } } window.addEventListener("scroll", onScroll); });

Sign up by email to receive news.