A rich and aromatic lamb curry from Kashmiri cuisine, featuring tender lamb pieces cooked in a flavorful gravy made with yogurt, ginger, garlic, and traditional spices. A hearty and comforting meal for two.

Classic Rogan Josh is a rich and aromatic lamb curry that originated in Kashmir, the northernmost region of India known for its Persian-influenced cuisine and fragrant spice blends. This iconic dish features tender pieces of lamb simmered in a velvety gravy made with yogurt, onions, tomatoes, ginger, garlic, and warming whole spices like cardamom, cloves, cinnamon, and bay leaves. The curry is distinguished by its deep red color from Kashmiri red chili powder, which provides vibrant color without overwhelming heat. Rogan josh represents the sophisticated, aromatic style of Kashmiri cooking that emphasizes layered spices and slow cooking to develop complex flavors.
This recipe delivers authentic restaurant-quality Kashmiri curry at home with incredibly tender lamb in a luxurious, aromatic gravy that is rich without being heavy. The slow simmering process transforms tough lamb into melt-in-your-mouth pieces while developing deep, complex flavors from the whole spices and aromatics. Despite its vibrant red color, the curry is more aromatic and warming than fiery hot, making it approachable for those who prefer milder spice levels. The yogurt-based gravy has a beautiful silky texture and tangy depth that distinguishes it from cream-based curries. The dish actually tastes better the next day as the spices meld and deepen, making it perfect for make-ahead entertaining or meal prep.
Rogan josh is perfect for special occasions, dinner parties, and celebrations when you want to serve an impressive Indian feast that showcases authentic regional cuisine. Serve it as the centerpiece of a multi-course Indian meal alongside naan bread, basmati rice, raita, and vegetable side dishes. The curry works beautifully for weekend cooking projects when you have time to let it simmer slowly and fill your home with amazing aromas. It is also excellent for cold weather comfort meals when you crave something warming and deeply satisfying. Make it a day ahead for stress-free entertaining since the flavors improve overnight.
Brown the lamb in batches without crowding the pot to develop a good crust, which adds deep flavor to the final curry. Toast the whole spices in oil until fragrant before adding aromatics โ this blooms their essential oils and creates more complex flavor. Remove the pot from heat before stirring in yogurt and add it gradually to prevent curdling from the high temperature. Simmer the curry gently and slowly for 40-60 minutes until the lamb is fork-tender โ rushing this step results in tough meat. Use Kashmiri red chili powder if you can find it for the authentic deep red color with mild heat, or substitute with paprika and a pinch of cayenne.
The traditional protein that provides rich, distinctively flavorful meat perfect for slow simmering. Lamb shoulder has enough fat and connective tissue to become incredibly tender during long cooking without drying out. Lamb is high in protein, iron, zinc, and B vitamins. The meat absorbs the aromatic spices beautifully, making it the ideal choice for this curry.
Cardamom pods, cloves, cinnamon stick, and bay leaves form the aromatic backbone of rogan josh, providing warm, complex flavors that distinguish Kashmiri cuisine. These whole spices are toasted in oil to release their essential oils before other ingredients are added. The combination creates layers of flavor that cannot be replicated with ground spices alone.
The signature ingredient that gives rogan josh its distinctive deep red color and mild, slightly sweet heat. Unlike regular chili powder, Kashmiri chilies are prized for their vibrant color rather than intense spiciness. If unavailable, substitute with sweet paprika for color plus a pinch of cayenne for gentle heat.
Creates the creamy, tangy gravy base that is characteristic of Kashmiri curries while tenderizing the lamb through its natural acids. The yogurt adds richness and silky texture without the heaviness of cream, making the curry lighter and more digestible. It must be added off heat and gradually to prevent curdling.
Essential aromatics that provide pungent depth and warming heat that complements the lamb beautifully. Fresh ginger adds bright, slightly spicy notes while garlic contributes savory complexity. Ginger-garlic paste is traditional in Indian cooking, but minced fresh versions work perfectly and provide the most vibrant flavor.
Replace lamb with bone-in chicken thighs and reduce simmering time to 25-30 minutes for a lighter, quicker version. Use goat meat for a traditional alternative with similar cooking time to lamb. Swap Kashmiri chili powder with 2 tablespoons paprika plus 1/4 teaspoon cayenne for similar color and mild heat. Replace plain yogurt with coconut yogurt or omit entirely for a dairy-free version, though texture will differ. Use beef stew meat instead of lamb if lamb is unavailable or too expensive. If you do not have whole spices, use ground versions (1/2 teaspoon each of ground cinnamon, cardamom, cloves) though flavor will be less complex. Add cashew paste for extra creaminess and richness. Serve with naan, roti, rice, or quinoa.
Heat 1 tablespoon ghee or vegetable oil in a heavy-bottomed pot or Dutch oven over medium-high heat. Add the lamb cubes and cook them until they are well browned on all sides. Take the browned lamb out of the pot and set it aside.
Lower the heat to medium. Add the chopped onion to the same pot and cook for 5-7 minutes until it becomes soft and lightly golden. Stir in the grated ginger and minced garlic, and cook for 1 minute until they smell fragrant (they have a pleasant smell). Add the whole spices: 1 green cardamom pod, 1 black cardamom pod, 1 inch cinnamon stick, 2-3 cloves, and 1 bay leaf. Cook for 30 seconds, stirring.
Stir in the ground coriander, ground cumin, Kashmiri red chili powder (or paprika and cayenne), and turmeric powder. Cook for 30 seconds, stirring constantly. If using yogurt, take the pot off the heat for a minute, then slowly stir in the 1/2 cup plain yogurt until it's fully mixed. This helps prevent the yogurt from curdling (separating).
Return the browned lamb to the pot. Pour in 1/2 cup water or vegetable broth and add salt to taste (start with 1/4 teaspoon). Bring the mixture to a gentle simmer (cook gently just below boiling, with small bubbles). Cover the pot, reduce the heat to low, and let it simmer for 30-40 minutes, or until the lamb is very tender and the sauce has thickened to your liking. Stir occasionally to prevent sticking.
Taste the Rogan Josh and adjust salt or other spices if needed. Garnish generously with 1/4 cup chopped fresh cilantro. Serve hot with basmati rice or naan bread.
Techniques that separate good from great
Add the lamb pieces in a single layer with space between them โ if the pot is crowded, the temperature drops and the meat steams instead of searing. Brown in 2-3 batches and take the time to get real caramelization on all sides. This crust becomes the flavor foundation of the entire curry.
Before adding any other ingredients, toast the cardamom, cloves, cinnamon, and bay leaves in the hot oil for 30-60 seconds until the kitchen fills with fragrance. This blooms their essential oils and releases layers of aroma you simply cannot get from adding them later in the process.
Adding yogurt directly to a hot pan causes it to curdle and break into grainy bits rather than forming a smooth, silky sauce. Remove the pot from heat entirely, let it cool for 2-3 minutes, then whisk in the yogurt gradually before returning to low heat.
The collagen in lamb shoulder needs 40-60 minutes of gentle, covered simmering to break down into gelatin, which is what gives the curry its luxurious, glossy consistency. High heat toughens the meat; low heat transforms it into fork-tender pieces that fall apart beautifully.
Different ways to make this dish your own
Replace the bone-in lamb with bone-in chicken thighs and reduce the simmering time to 25-30 minutes. The lighter chicken absorbs the spices quickly and produces a faster, weeknight-friendly version of this classic.
Substitute goat meat (bone-in pieces) for an even more traditional version common in the Kashmiri hill regions. The lean goat develops deep flavor with extended slow cooking โ allow 60-70 minutes of simmering time.
Replace the meat with 2-inch cubes of pan-fried paneer and add cauliflower florets for substance. Reduce the cooking time to 15-20 minutes after adding the yogurt sauce to prevent the paneer from becoming rubbery.
After blooming the whole spices and browning the meat, transfer everything to a slow cooker with all remaining ingredients and cook on low for 7-8 hours or high for 4-5 hours for a hands-off, deeply flavored version.
Perfect pairings to complete the meal
Serve with warm garlic naan for scooping up the rich, aromatic gravy โ the bread absorbs the curry sauce perfectly and provides a satisfying counterpoint to the tender lamb.
Spoon over fragrant long-grain basmati rice and serve alongside a cooling cucumber-mint raita to balance the warmth of the spices โ the classic, complete Kashmiri feast.
Pair with a simple yellow dhal (lentil soup) and rice for a full Indian meal that provides complete protein from complementary sources and contrasts the rich lamb with lighter, earthier flavors.
Rogan josh tastes noticeably better on day two. Make it a day ahead for stress-free entertaining โ simply reheat gently, garnish with fresh cilantro and a drizzle of cream, and serve to impressive results.
Keep it fresh and plan ahead
Store in an airtight container for up to 4 days. The flavors deepen and the spices mellow, making it even better on days 2 and 3.
Freeze in portions for up to 3 months. Cool completely before freezing. Thaw overnight in the refrigerator and reheat gently on the stovetop.
This curry is ideal for making 1-2 days ahead. Cook completely, cool, and refrigerate. Skim any solidified fat from the top before reheating and serving.
Reheat over low-medium heat with a splash of water or broth, stirring occasionally, until hot throughout โ about 8-10 minutes. Do not boil or the sauce may separate.
Turn what you already have in your fridge into delicious meals. Our AI-powered generator creates personalized recipes from your ingredients.
Browse more like this:
Discover more delicious recipes similar to what you're cooking
Join our newsletter and discover new favorites delivered straight to your inbox. No spam, just tasty inspiration.
super simple recipe and tastes like it came from a restaurant
reminds me of family dinners in Kashmir perfectly fragrant and flavorful
flavor amazing but a little hot for me next time iโll tone down the chili
the lamb was tender and spices perfectly balanced reminds me of home
The sauce was full of flavor, but some of the lamb chunks were a bit tough. The texture made it harder to enjoy the dish fully.
The dish tasted great, but the sauce ended up a bit thin. Reducing it longer would have given it a richer consistency.
The flavor was nice, but I like my curries with more heat. Adding a bit of chili or extra garam masala would have made it more exciting.
This is a big hit!!