
Savory pork or lamb meatballs simmered in a fragrant Indian-style curry sauce — an easy, comforting main that pairs perfectly with plain basmati rice.

This Indian-spiced meatballs in curry sauce is the kind of dish that fills the kitchen with warm aromas and brings everyone to the table without fuss. I first learned this combination on an evening when I had a pack of ground pork, a lonely can of tomatoes, and a jar of curry paste on the shelf. The spices came together to create juicy meatballs and a lush sauce that tasted far more complex than the time invested. It quickly became a family favorite for weeknight dinners and a dish I turn to when I want something cozy yet exciting.
What makes this preparation special is the balance of textures and spices: meatballs browned to a golden exterior yet tender inside, swimming in a silky curry sauce made from sautéed aromatics, chopped tomatoes and a splash of cream or coconut milk. The sauce is built slowly so the flavors deepen, but the whole process remains approachable — 15 minutes of prep and about 40 minutes to finish. Serve it simply with plain basmati rice and a big spoon; it needs nothing else.
In my household this dish earned instant affection. My partner declared it “restaurant-level” the first night, and my mother asked for the recipe after two bites. Cooking it taught me the small magic of browning meatballs well and letting spices bloom in gentle heat — those two steps transform simple ingredients into something deeply satisfying.
One of my favorite parts is the leftover the next day: flavors deepen overnight, and the dish becomes even more cohesive. I remember bringing a container to a potluck and hearing so many people ask for the recipe; that’s when I knew this combination — humble ingredients elevated by technique — belonged in my dinner rotation permanently.
Cool the curry to room temperature before refrigerating. Store in an airtight container for up to 3 days. For freezing, portion into meal-sized containers leaving 1/2-inch headspace for expansion and freeze up to 3 months. Reheat gently on the stovetop over low heat with a splash of water to loosen the sauce, or microwave in a covered container in 60-second bursts, stirring in between. Fresh cilantro is best added just before serving rather than stored with the curry to preserve its bright flavor.
If you prefer ground beef, turkey or chicken, the method remains the same though cooking times may vary slightly; turkey and chicken benefit from an extra tablespoon of yogurt or a small beaten egg to keep meatballs moist. Swap cream for full-fat coconut milk for a dairy-free version and to add a subtle coconut note. If you only have curry powder, use 1 to 1 1/2 tbsp to taste, but paste gives a bolder, faster result. For leafy greens, spinach wilts sooner than kale — add it in the final 2 minutes to avoid overcooking.
Serve with steaming plain basmati rice and a wedge of lemon or lime to brighten the flavors. For a fuller spread, offer warm naan, a cooling cucumber raita, and a simple lentil dhal. Garnish with chopped cilantro and a few thinly sliced red onions for crunch. For a weeknight plate, pair with roasted vegetables or a crisp green salad to balance the richness of the curry.
This kofta-style preparation draws inspiration from various South Asian meatball traditions where spiced meat is shaped into balls and cooked in a thick, fragrant gravy. Regional variations exist across India, Pakistan and beyond: some koftas are simmered in creamy nut-based sauces, others in tangy tomato gravies. The use of curry paste is a modern convenience that concentrates complex spice blends, while traditional cooks might use whole spices and freshly ground blends for a more textured spice profile.
In winter, add chopped root vegetables like carrots or turnips to the sauce for sweetness and heartiness. In summer, reduce cooking time slightly and finish with extra chopped fresh herbs and a squeeze of citrus to keep the dish light. For holiday gatherings, increase the quantity and finish with toasted nuts for texture, or shape smaller meatballs as bite-sized appetizers for a party platter.
Form meatballs in advance and store them raw in a single layer on a tray covered with plastic wrap for up to 24 hours or freeze on the tray then transfer to a bag. Make the sauce a day ahead and refrigerate; reheat the sauce and add browned meatballs to finish cooking when you’re ready to serve. Pack rice separately for lunchboxes to keep textures fresh and reheat together at meal time.
There is a simple joy in sharing this dish: it’s humble, reliably delicious and flexible. Whether you make it exactly as written or adapt it to your pantry, I hope it becomes a friendly staple in your rotation and a recipe you return to again and again.
Use slightly wet hands when shaping meatballs to prevent sticking and to form smooth surfaces that brown evenly.
Brown meatballs in batches so they sear rather than steam; a golden crust adds flavor and keeps interiors juicy.
Taste the sauce before salting — curry pastes often contain salt, so add extra salt sparingly at the end.
This nourishing indian spiced meatballs in curry sauce (kofta curry) recipe is sure to be a staple in your kitchen. Enjoy every moist, high protein slice — it is perfect for breakfast or as a wholesome snack any time.
Yes. You can substitute coconut milk for the light cream to make the sauce dairy-free and keep a rich mouthfeel.
Brown them well but slightly undercook before simmering; they will finish cooking gently in the sauce and remain tender.
This Indian Spiced Meatballs in Curry Sauce (Kofta Curry) recipe makes perfectly juicy, tender, and flavorful steak every time! Serve with potatoes and a side salad for an unforgettable dinner in under 30 minutes.

In a large bowl mix ground meat with grated ginger, spices, salt and yogurt until just combined. Avoid overmixing to keep meatballs tender.
Form into golf ball-sized portions. Brown in batches in 1 tbsp oil over medium-high heat until golden on all sides but not fully cooked. Set aside.
Leave about 1 tbsp fat in the pan, then cook chopped onion, minced garlic, grated ginger and cilantro stalks on low heat for about 10 minutes until soft without browning.
Stir in curry paste for 1 minute, then add canned tomatoes and water. Return meatballs to the pan, spoon sauce over them, bring briefly to a boil, then reduce and simmer covered for 20 minutes.
Add chopped kale or spinach and simmer uncovered 10 more minutes. Stir in cream or coconut milk in the last few minutes and adjust seasoning. Garnish with garam masala and cilantro.
Last Step: Please leave a rating and comment letting us know how you liked this recipe! This helps our business to thrive and continue providing free, high-quality recipes for you.
Leave a comment & rating below or tag
@royalrecipe on social media!


Easy homemade thin-crust three-cheese spicy chicken and jalapeño pie — a flavor-packed pizza with a satisfying kick, perfect for pizza night or game day.

A bright, creamy BLT pasta salad tossed with basil pesto, fresh greens, cherry tomatoes, and crisp bacon—perfect for warm-weather gatherings and meal prep.

Tender sautéed shrimp tossed with spaghetti and a creamy sweet-spicy bang bang sauce—ready in under 30 minutes for a weeknight favorite.

Leave a comment & rating below or tag @royalrecipe on social media!
Enjoyed this recipe? Share it with friends and family, and don't forget to leave a review!
This recipe looks amazing! Can't wait to try it.
Comments are stored locally in your browser. Server comments are displayed alongside your local comments.
Join to receive our email series which contains a round-up of some of our quick and easy family favorite recipes.