Looking for an easy Malaysian chicken curry recipe for a busy weeknight? This one-pot meal is rich, creamy, and packed with aromatic spices. Tender chicken simmers in a flavorful coconut curry sauce, creating a comforting, restaurant-quality main that's perfect for using up vegetables and pantry staples.

Jump to:
Malaysian chicken curry, or Gulai Ayam, is a beloved coconut chicken curry enjoyed throughout Malaysia and Indonesia, with each region bringing its own distinctive flavors and techniques. My version includes extra vegetables to make it even more hearty and nutritious.
Every time I make it, I'm reminded of my trips to Kuala Lumpur, my husband's hometown, and the comforting aroma of my mother-in-law's homemade curry filling the kitchen. Frying the fresh aromatics until the oil separates before adding the ground spices allows their flavors to fully develop, creating a rich, complex curry base that's difficult to achieve with store-bought curry pastes.

Why My Recipe Works
- Scratch spice bloom: Frying the dry spices in hot aromatic oil releases their fat-soluble flavors, creating a deeper, more complex curry base.
- Bone-in chicken thighs: Dark meat stays juicy and tender through simmering, thanks to its natural collagen and rich flavor.
- High-heat vegetable steam: Simmering the vegetables and chicken stock together under a covered lid speeds up cooking while helping the potatoes become tender and the greens retain their color.
Ingredients & Substitutes
Exact ingredient amounts are listed in the recipe card at the bottom of this page.
Main Ingredients
- Chicken Thighs: Boneless thighs stay tender and flavorful; skin-on or skinless both work.
- Yukon Gold Potatoes: Release starch as they simmer, naturally thickening the curry gravy. (Sub: Yellow potatoes)
- Snap Peas: Add with the other vegetables to soak up the curry flavors while adding freshness and color. (Sub: Snow peas or green beans)
- Red Bell Peppers: Cut evenly for consistent cooking. (Sub: Green, yellow, or orange peppers)
- Full-Fat Coconut Milk: Creates a rich, creamy base that balances the spices. Avoid light coconut milk, which can make the sauce watery. (Sub: Coconut cream)
- Chicken Stock: Use low-sodium stock to control the salt level.
- Vegetable Oil: Choose a neutral, high-smoke-point oil for frying the spices. (Sub: Canola or avocado oil)
- Salt: Season to taste.
Fresh Aromatics
- Shallots: Finely chop so they soften and blend into the curry base. (Sub: Onion)
- Fresh Ginger: Grate or finely mince to release its warm, aromatic flavor.
- Garlic: Freshly minced gives the best flavor. (Sub: Jarred minced garlic)
- Green Onion: Finish with a fresh garnish.
- Bay Leaves: Add whole while simmering and remove before serving.
Scratch Curry Powder Mix
- Ground Coriander: Provides an earthy, citrusy base for the spice blend.
- Chili Powder: Use 1 teaspoon for balanced heat; increase if you prefer a spicier curry.
- Fennel Seeds: Lightly crush to release their aroma.
- Cloves: Add whole for a warm, aromatic depth.
- Turmeric Powder: Adds golden color and earthy depth.
- Ground Cinnamon: Brings warmth and balance to the spices.
- Star Anise: Add whole and remove before serving.
- Ground Nutmeg: Adds a subtle warm, nutty note.
- Black Pepper: Freshly ground for clean heat.
Instructions
Below are step-by-step instructions on how to make Malaysian chicken curry:
- Make the curry powder mix: Combine all the dry spices in a small bowl and set aside.
- Bloom the aromatics and spices: Heat the vegetable oil in a large pot over medium heat. Once hot, add the chopped shallots, garlic, ginger, and curry powder mix. Stir-fry for 30-60 seconds until the mixture becomes deeply fragrant and the spices coat the aromatics.
- Sear the chicken: Add the diced chicken thighs to the pot and stir-fry for about 1 minute, coating each piece in the fragrant spice mixture.
- Build the curry base: Pour in the low-sodium chicken stock. Add the diced bell peppers, snap peas, potatoes, and whole bay leaves. Stir well to combine, cover with a tight-fitting lid, and bring to a boil.
- Simmer with the coconut milk: Stir in the full-fat coconut milk. Bring the curry back to a boil, then lower the heat to a low-medium simmer. Cover and cook for 30 minutes, until the sauce reduces and thickens to a rich, creamy consistency. Season with salt to taste.
- Garnish and serve: Remove the curry from heat and top with freshly chopped green onions. Let it rest for a minute before serving hot with steamed white rice.
Expert Tips
- Cut potatoes into large chunks: Larger pieces hold their shape during the 30-minute simmer and won't break down into the curry.
- Shake the coconut milk can well: This blends the separated coconut fat back into the liquid for a smoother, creamier curry.
- Mix the spices first: Combine the dry spices in a small bowl before adding them to the pot to prevent scorching and ensure even distribution.
- Stir the aromatics constantly: Fry the aromatics and spices for about 60 seconds, stirring continuously to prevent burning.
- Keep the lid closed during the initial simmer: Trapping steam helps the vegetables cook more efficiently.
Variations
- Pork shoulder swap: Replace chicken thighs with diced pork shoulder and simmer 10 minutes longer until tender.
- Braised beef twist: Use diced beef chuck for a rich, slow-simmered curry with tender meat.
- Crispy tofu alternative: Swap in fried tofu puffs and use vegetable stock for a vegetarian version.
Pairing Suggestions
Serve this Malaysian chicken curry with:
- White Rice: Absorbs the rich coconut gravy and balances the spices.
- Garlic Gai Lan: Fresh, slightly bitter greens cut through the creamy curry.
- Malaysian Curry Puffs: Flaky, buttery pastries add a crisp contrast before the main dish.
Storage & Reheating
- Refrigerator: Store cooled leftovers in an airtight container for up to 4 days.
- Freezer: Freeze in a freezer-safe container for up to 3 months. Thaw overnight in the refrigerator before reheating.
- Reheating: Warm on the stovetop over medium-low heat for 10 minutes or microwave covered for 2-3 minutes, stirring halfway.
FAQ
High heat can cause the fats in full-fat coconut milk to separate from the liquid. After adding the coconut milk, bring the curry to a gentle boil, then immediately reduce the heat to a low simmer to keep the sauce smooth and creamy.
It's best to avoid russet potatoes. Their high starch and low moisture content cause them to break down during the 30-minute simmer, which can make the curry grainy. Yellow potatoes hold their shape while still helping to thicken the gravy.
If excess water from the vegetables has diluted the curry, mash one or two cooked potato pieces directly into the sauce. The released starch will naturally thicken the gravy without changing the flavor.
More Like This
📖 Recipe

One-Pot Malaysian Chicken Curry with Vegetables (Gulai Ayam)
Ingredients
- 1 lb skinless boneless chicken thighs or skin-on boneless thighs, diced into 1.5" cubes
- 1 shallot finely diced
- 1 inch ginger finely minced or grated
- 4 garlic cloves minced
- 4 cups chicken stock low-sodium
- 1 red bell pepper diced
- 1.5 cups snap peas ends trimmed
- 2 medium yukon gold potatoes peeled & cut into quarters
- 2 bay leaves
- 14 fl oz. coconut milk full fat kind
- 2 tablespoon vegetable oil or any neutral oil
- 1 green onion finely chopped for garnishing
- salt add to taste
Curry Powder Spice Mix
- 1 teaspoon ground coriander
- 1 teaspoon chili powder
- 1 teaspoon fennel seeds
- 1 teaspoon ground turmeric
- 1 teaspoon ground cinnamon
- ½ teaspoon ground nutmeg
- ½ teaspoon black pepper
- 6 cloves
- 2 star anise
Instructions
- Combine the ingredients for the curry powder spice mix in a small bowl and set aside.
- Heat the vegetable oil in a large pot over medium heat. Once hot, add the chopped shallots, garlic, ginger, and curry powder mix. Stir-fry for 30-60 seconds until the mixture becomes deeply fragrant and the spices coat the aromatics.
- Add the diced chicken thighs to the pot and stir-fry for about 1 minute, coating each piece in the fragrant spice mixture.
- Pour in the low-sodium chicken stock. Add the diced bell peppers, snap peas, potatoes, and whole bay leaves. Stir well to combine, cover with a tight-fitting lid, and bring to a boil.
- Stir in the full-fat coconut milk. Bring the curry back to a boil, then lower the heat to a low-medium simmer. Cover and cook for 30 minutes, until the sauce reduces and thickens to a rich, creamy consistency. Season with salt to taste.
- Remove the curry from heat and top with freshly chopped green onions. Let it rest for a minute before serving hot with steamed white rice.






Anya Gous
This is a really nice recipe! I ommitted the stock, potatoes and onions and it still came out really nice. I used coconut cream instead of coconut milk. I just scraped my plate with a piece of ciabatta to get the last bit of sauce since it is so goodðŸ¤. Will definitely make it again.
Christie Lai
Awesome! Thank you so much for making my recipe and for leaving this positive review, Anya! Glad it worked out well with the substitutes and omissions!
Joyce Waite-Gibson
Absolutely love your recipe! It's a keeper for me. Thank you!
Christie Lai
Thank you so much for making my recipe! Thrilled to read that you enjoyed it!
Alison
This was as good as any restaurant curry. Easy and absolutely delicious. I had no snow peas and used petite pois and spinach instead. Will be making this regularly!
christieathome
Thank you so much Alison for your kind words! I'm so glad you enjoyed this recipe! Great idea to substitute with petite pois and spinach instead! Have a great day!
Alison
This was as good as any restaurant curry. Easy and absolutely delicious. I had no snow peas and used petite pois and spinach instead. This recipe is a keeper!
Anisha
This curry made my family and I feel like we were in Malaysia even though we’ve never been! So perfectly aromatic and the sweet/spicy flavors could not have complemented one another better. It was super easy to make with just one pot and minimal steps! Thanks so much for sharing the recipe Christie 🙂
christieathome
Thank you Anisha for making my recipe! I am so happy you and your family enjoyed it and it transported you to Malaysia 🙂 I appreciate your kind review. Have a great day!
Alex
Love the flavours in this - just what I am craving at the moment. As we head into winter here in Australia, I need warming dishes like this!
christieathome
Thanks so much!!! Yes perfect for the winter ahead in Austrailia!
Allie Mackin
Oh sounds so good I need try something different with chcken, thanks for this recipe!
Allie of
http://www.allienyc.com
Oh love this, thanks for posting!
Katerina
After reading this, I feel like your husband and I would get along well - I also have a low tolerance for spice (as you very nicely put it). I love the sound of all these ingredients and the curry sounds beautifully comforting. Perfect for this time of year when the temps are getting lower and lower here in Australia!
Tasia ~ two sugar bugs
We love curry recipes and this looks like it doesn't disappoint! Thank you for the great recipe!
Rosemary
Mmm curry is THE BEST!! We just bought this ULTRA spicy thai pepper mix (apparently 20x hotter than jalapeno) and I am tempted to make this and add in some of that spice!
Never Ending Journeys
Yum, this chicken curry looks so flavorful and delicious! Thanks for sharing this great recipe!
Josiah - DIY Thrill
This meal looks so delicious!