Main Courses
This authentic Punjabi chicken curry brings the bold, aromatic flavors of North India straight to your kitchen—where garam masala and creamy tomato sauce create a symphony of spices. 🌟 The secret lies in slow-cooking the chicken until it's tender, layered with traditional spices like turmeric, cumin, and coriander, then finished with a velvety tomato base that balances heat and richness.
I've perfected this recipe over years of testing, ensuring every bite delivers the depth of a dhaba-style dish.
The magic happens in the marinade, where yogurt tenderizes the chicken while garam masala infuses it with warm, earthy notes. As the curry simmers, the spices meld into a fragrant broth that coats the chicken perfectly.
What sets this apart is the creamy tomato harmony—a blend of fresh tomatoes, onions, and cashew paste that thickens into a luscious sauce without overpowering the spices. The result? A curry that's rich, aromatic, and deeply satisfying, just like the one you'd find in a Punjabi home.
By the time you serve this dish, your kitchen will smell like a bustling Indian street, and your taste buds will be transported to the heart of Punjab. The tender chicken falls apart with each bite, swimming in a sauce that's perfectly balanced—slightly sweet, tangy, and spiced just right.
This isn't just a curry; it's a celebration of flavor, tradition, and the art of slow-cooked perfection.
Pair it with steamed basmati rice, warm roti, or a cooling cucumber raita to complete the meal. The leftovers? Even better the next day as the flavors deepen. Let's dive into the recipe—your taste buds will thank you.
Ingredients for authentic punjabi chicken curry
Pantry staples meet Indian market finds for this fragrant, slow-cooked masterpiece.
| Ingredient | Amount | Notes |
|---|---|---|
| Boneless Chicken Thighs 🍗 | 1 ½ lb | Skin-on preferred for flavor |
| Plain Yogurt 🥛 | 1 cup | Full-fat for best texture |
| Garam Masala 🌶️ | 1 ½ tbsp | Authentic blend preferred |
| Ground Cumin 🌿 | 1 tsp | Freshly toasted for depth |
| Ground Coriander 🌿 | 1 tsp | For earthy aroma |
| Turmeric Powder 🧂 | ½ tsp | Bright yellow color |
| Red Chili Powder 🌶️ | 1 tsp | Adjust for heat preference |
| Fresh Tomatoes 🍅 | 2 medium | Ripe but firm preferred |
| Yellow Onions 🧅 | 1 whole | Finely chopped for sweetness |
| Garlic Cloves 🧄 | 4 cloves | Minced for aromatic base |
| Cashew Paste 🥜 | ½ cup | Homemade or store-bought |
| Fresh Ginger 🌿 | 1 tbsp | Grated for zesty kick |
| Vegetable Oil 🫒 | ½ cup | High smoke point preferred |
| Salt 🧂 | 1 ½ tsp | Kosher or sea salt |
| Fresh Cilantro 🌿 | ¼ cup | Chopped for garnish |
The garam masala is non-negotiable here—Penzeys or local Indian markets have the best blends. If you can't find it, spice blends from Trader Joe's work in a pinch, but you'll miss that authentic depth. For the chicken, skin-on thighs stay juicier than breasts. Look for bright red, marbled meat at the grocery store—avoid those pale, rubbery thighs. The yogurt should be plain, full-fat, and preferably Greek-style for extra creaminess. If you're making this ahead, marinate the chicken overnight for maximum flavor infusion.
No fresh ginger? Powdered works at half the amount, but fresh is ideal. Running short on cashew paste? Blend soaked cashews with water—it's a game-changer for that creamy texture. The tomatoes can be canned in a bind (San Marzano work best), but fresh gives you that burst of sweetness. For heat control, reduce the red chili powder to 0.5 tsp if you're sensitive. The onions? Yellow or red both work, but yellows add a touch of sweetness that balances the spices perfectly. If you're feeling fancy, add a pinch of cardamom pods to the marinade for an extra layer of complexity.
This curry tastes even better the next day—3-4 days in the fridge, 3 months frozen. I always double the batch because it disappears fast. Store in airtight containers with a layer of oil on top to preserve freshness. The sauce thickens as it cools, so add a splash of water when reheating. Garnish with fresh cilantro right before serving—it brightens up all those warm spices. Leftovers reheat beautifully in a pot with a splash of water or even straight from the fridge if you're patient.
Why You'll Love This Recipe
- No-Fuss Marination: The yogurt does all the work—just coat the chicken, let it sit for 20 minutes, and you’re done. No fancy prep, no stress, and the thighs stay juicy while the spices sink in.
- Warm Spice Hug: That garam masala and cumin blend? It’s like a cozy blanket for your taste buds—earthy, slightly sweet, with a kick that lingers. The coriander rounds it out so it’s never overpowering, just perfect.
- Leftovers That Win: Honestly, this tastes even better the next day. The flavors meld into something richer, and it reheats like a dream. Pack it for lunch or freeze half—your future self will thank you.
- Budget-Friendly Crowd-Pleaser: Chicken thighs are cheap, yogurt stretches the sauce, and a pinch of garam masala goes a long way. Feed four for the price of two fancy dinners, and everyone will ask for seconds. (Yes, even on a Tuesday night.)
Step-by-step instructions for authentic Punjabi chicken curry
Here's how to create that perfect balance of smoky garam masala and velvety tomato sauce.
🍳 Step 1: Marinate the Chicken for Maximum Flavor
In a large bowl, combine the 1.5 lb boneless chicken thighs, 1 cup plain yogurt, 1.5 tbsp garam masala, 1 tsp ground cumin, 1 tsp ground coriander, 0.5 tsp turmeric powder, 1 tsp red chili powder, and 1.5 tsp salt. Mix gently until the chicken is fully coated in the marinade. I like to use my hands for this—it helps distribute the spices evenly.
Cover the bowl and refrigerate for at least 4 hours, or overnight if possible. This long marinating time is what makes the curry so tender and flavorful. The yogurt will start to break down the chicken fibers, creating that melt-in-your-mouth texture we all love.
🔥 Step 2: Sear the Chicken for Deep, Caramelized Flavor
Heat 0.5 cup vegetable oil in a large, heavy-bottomed pot over medium-high heat. Once the oil is shimmering (around 350°F), carefully remove the chicken from the marinade (reserve the marinade) and add it to the pot in a single layer. Don't overcrowd the pan—this ensures each piece gets that beautiful golden-brown sear.
Sear the chicken for 4-5 minutes per side until deeply golden and crispy. You'll know it's ready when it releases easily from the pan. Remove the chicken and set it aside on a plate. Here's the thing—don't skip this step. That caramelized crust is what gives authentic Punjabi curry its rich, complex flavor.
🍳 Step 3: Build the Aromatic Base
In the same pot, reduce the heat to medium and add the 1 whole yellow onion, chopped into small pieces. Sauté for 5-6 minutes until the onions turn golden brown and sweet. Add the 4 cloves garlic cloves and 1 tbsp fresh ginger (grated), cooking for another 1-2 minutes until fragrant.
Now add the reserved marinade to the pot, stirring well to scrape up all those delicious browned bits from the bottom. This is where all the flavor lives. Increase the heat to medium-high and let the mixture simmer for 5 minutes, stirring occasionally, until it reduces slightly and thickens.
🥘 Step 4: Create the Creamy Tomato Sauce
Add the 2 medium fresh tomatoes, chopped into small pieces, to the pot. Cook for 8-10 minutes until the tomatoes break down and the sauce becomes thick and vibrant. You want the tomatoes to lose their raw taste completely—this is the foundation of your creamy sauce.
Stir in the 0.5 cup cashew paste and cook for another 3-4 minutes. The cashews will help create that signature Punjabi creaminess without using heavy cream. Taste the sauce and adjust the seasoning if needed—you might want to add a pinch more salt or chili powder to suit your taste.
🔪 Step 5: Finish and Garnish for Authentic Flavor
Return the seared chicken to the pot and spoon the sauce over it, making sure each piece is well-coated. Cover the pot and simmer on low heat for 25-30 minutes, stirring occasionally, until the chicken is cooked through and tender. The sauce should be thick and cling to the chicken beautifully.
Remove from heat and let the curry rest for 5 minutes. This resting period allows the flavors to meld together perfectly. Garnish with 0.25 cup fresh cilantro, chopped finely, just before serving. The bright, fresh cilantro cuts through the richness of the curry and adds that final authentic touch.
Pro Tips For Making Authentic Punjabi Chicken Curry
- Marinate for 2 Hours: Punjabi curry relies on yogurt’s tenderizing magic—don’t rush it. I used to cut corners with 30 minutes, but the chicken stays tough. Let those thighs soak in the yogurt mix (with garam masala and salt) for a full 2 hours in the fridge. The longer they sit, the more the spices penetrate, and the juicier they stay when cooking.
- Bloom Spices in Oil: Skip tossing ground cumin and coriander straight into the pan—they’ll just burn. Heat 2 tablespoons of oil until shimmering (not smoking), then add the whole spices (if using) or the ground powders one at a time, letting them sizzle for 30 seconds each. This unlocks their aroma, which is half the flavor in this curry.
- Simmer, Don’t Boil: After adding the yogurt-chicken mix to the pan, reduce heat to low and let it bubble gently. I learned this the hard way—aggressive boiling turns the yogurt into a gluey mess. A steady simmer (2-3 minutes) keeps the sauce creamy and the chicken intact. Cover the pan if it’s drying out too fast.
- Finish with Fresh Garam Masala: Store-bought garam masala loses punch over time. Save a pinch (½ teaspoon) to sprinkle at the very end, right after the curry comes off heat. This restores brightness and cuts through the richness of the yogurt and oil. It’s the difference between a good curry and one that feels special.
Perfect pairings for this authentic punjabi chicken curry
Rice Pairings
Steamed basmati rice is the classic companion to Punjabi chicken curry, its delicate aroma complementing the rich spices. Use a 1:1.5 rice-to-water ratio and cook in a heavy pot with a tight lid for 15 minutes after the water boils.
For extra fluffiness, spread the cooked rice on a tray and let it cool slightly before serving. 🌟
For a heartier option, try jeera rice—infuse the rice with 1 tsp cumin seeds and a pinch of turmeric while cooking. The nutty cumin enhances the curry’s warmth, creating a perfect balance.
I often make a big batch of jeera rice to serve alongside this curry, as it pairs beautifully with the smoky garam masala flavors.
Bread Sides
Warm naan or roti is essential for soaking up the creamy sauce. Brush naan with melted ghee and toast in a skillet for 30 seconds per side until puffed and golden.
For a quicker option, serve store-bought garlic naan from brands like Tandoor Chef or Tasty Bite. The buttery, pillowy texture contrasts perfectly with the spiced curry.
For a gluten-free twist, bajra roti (made from pearl millet flour) adds a nutty, earthy note that stands up to the bold flavors. Mix 1 cup bajra flour with water, roll into thin circles, and cook on a dry skillet until crispy.
It’s a staple in many Punjabi homes and adds a delightful texture contrast. 💛
Cooling Raita
A cucumber-mint raita is the ultimate palate cleanser. Blend 1 cup Greek yogurt, ½ cup grated cucumber, 2 tbsp fresh mint, ½ tsp roasted cumin powder, and a pinch of salt.
Chill for 30 minutes before serving to let the flavors meld. The cool, creamy raita balances the heat and richness of the curry beautifully.
For a tangier option, try boondi raita—fry 2 tbsp chickpea flour into tiny balls (boondi), then mix with yogurt and a pinch of asafetida (hing). The crispy boondi adds a fun texture that elevates the dish.
I love serving this raita on the side for guests who enjoy a bit of crunch with their curry. ✨
Beverage Pairings
A masala chai made with black tea leaves, cardamom, ginger, and cinnamon is the perfect drink to serve alongside this curry. Brew 1 tbsp loose-leaf tea with 2 cups water and 1 cup milk, then simmer with the spices for 5 minutes.
The warm, spiced tea cuts through the richness of the curry and warms you up from the inside out.
For a non-alcoholic option, mango lassi adds a sweet, creamy contrast. Blend 1 cup yogurt, ½ cup mango pulp, ½ cup milk, and 1 tsp cardamom powder until smooth.
Serve chilled for a refreshing balance to the spicy curry. If you prefer something lighter, sparkling lime soda with a squeeze of lemon works wonderfully too. 🍹
Nutrition facts
Frequently asked questions
What makes this Punjabi chicken curry different from other curries?
This recipe captures the authentic Punjabi style with its creamy tomato-cashew base and garam masala-forward marinade. Unlike drier curries, it balances rich, velvety sauce with smoky spices through slow cooking. The key is the 4+ hour marinade and cashew paste that creates that signature Punjabi creaminess without heavy cream.
Can I use chicken breast instead of thighs?
You can, but thighs stay juicier and more tender—ideal for slow cooking. If using breasts, reduce marinating time to 2-3 hours max and cook for only 15-20 minutes after adding to the sauce. For best results, pound them to even thickness and avoid overcooking. The skin-on thighs in this recipe are traditional for maximum flavor.
How do I adjust the spice level?
Start with the 1 tsp red chili powder in the marinade, then taste the sauce before serving. For milder heat, reduce to 0.5 tsp chili powder and add ½ tsp sugar to balance. For extra heat, add ½ tsp cayenne or a pinch of Kashmiri red chili powder (which adds color too). Always adjust gradually!
Can I make this curry in an Instant Pot?
Yes! Sear the chicken first, then add all marinade ingredients and cook on high pressure for 12 minutes, followed by a 5-minute natural release. For creaminess, blend ½ cup sauce and stir it back in. The Instant Pot version cooks faster but may need 1 extra tbsp cashew paste to achieve the same thickness. Taste and adjust salt/spices after cooking.
Why does my curry taste bland after reheating?
Reheating can mute flavors because the sauce thickens. Revive it by adding 2-3 tbsp water or chicken broth and simmering for 5 minutes. For extra depth, stir in ½ tsp garam masala or a pinch of asafetida (hing)—it adds umami that disappears during storage. Always store with a thin layer of oil on top to preserve freshness.
