I enjoy this recipe because the beef turns incredibly tender while soaking up layers of spice and tang. I like that everything cooks in one pan, which keeps cleanup simple. I also appreciate how customizable the heat level is, making it easy for me to adjust the spice to my preference.
Ingredients
(Note: All ingredient amounts are listed in the recipe card below.)
For the Beef 2 pounds beef chuck see Notes 1 teaspoon salt ½ teaspoon freshly cracked black pepper 3 tablespoons neutral oil
For the Sauce 1 medium onion chopped 3 cloves garlic minced 2 teaspoons garam masala 2 teaspoons cumin 1 teaspoon paprika 1 teaspoon turmeric ½ teaspoon ground mustard ½ teaspoon cayenne pepper omit for more mild flavor ½ teaspoon ground ginger ½ teaspoon cinnamon 2 tablespoons tomato paste ¼ cup apple cider vinegar 1 cup low-sodium beef stock plus more as needed
I start by cutting the beef chuck into 2-inch cubes and placing them in a large bowl. I add the salt and black pepper, then toss the beef until evenly coated. I heat a large skillet over medium-high heat, add the oil, and let it get hot and shimmery. I sauté the beef until browned on all sides, then transfer it to a plate.
I reduce the heat to medium and add the chopped onion to the same skillet, cooking and stirring until deeply browned and caramelized. I stir in the garlic and cook until fragrant. I add all the spices, stirring constantly until they bloom. I mix in the tomato paste, then pour in the apple cider vinegar to deglaze the pan, scraping up all the browned bits.
I add the beef stock and return the beef to the skillet. Once the liquid begins to boil, I reduce the heat to medium-low, cover the skillet, and let it simmer for about 60 minutes. I stir occasionally and add a bit more stock if the sauce thickens too much. When the beef is tender and the sauce is thick, I adjust the salt and balance the vinegar if needed, then remove it from the heat.
Servings and Timing
I usually get 4 servings from this recipe. Prep time takes about 20 minutes, cooking time is around 1 hour and 30 minutes, and the total time comes to approximately 1 hour and 50 minutes.
Variations
I sometimes substitute lamb, or chicken for the beef, adjusting the cooking time as needed. I omit the cayenne when I want a milder curry. I also like using white vinegar instead of apple cider vinegar for a sharper tang.
Storage/Reheating
I store leftover vindaloo in an airtight container in the refrigerator for up to four days. When reheating, I warm it gently on the stovetop or in the microwave, adding a splash of beef stock if the sauce has thickened too much.
FAQs
Can I make beef vindaloo ahead of time?
I often make it a day ahead because the flavors deepen even more overnight.
What cut of beef works best?
I prefer beef chuck because it becomes tender after a long simmer.
Is beef vindaloo very spicy?
I find it moderately spicy, but I adjust says by reducing or omitting the cayenne.
Can I freeze beef vindaloo?
I freeze it in airtight containers for up to three months and thaw it in the refrigerator.
How do I thicken the sauce?
I let it simmer uncovered for a few minutes if I want a thicker consistency.
What if the vinegar flavor is too strong?
I stir in a small amount of brown sugar and simmer briefly to balance it.
Can I cook this in a Dutch oven?
I like using a heavy-bottomed pot or Dutch oven because it holds heat evenly.
What should I serve with beef vindaloo?
I usually serve it with basmati rice and naan to soak up the sauce.
Can I make this dairy-free?
I simply skip the yogurt garnish to keep it dairy-free.
Does this recipe work with chicken?
I use chicken sometimes and reduce the simmering time so it doesn’t overcook.
Conclusion
I think this beef vindaloo is the perfect recipe when I want a comforting, bold curry that feels special yet achievable at home. The tender beef and deeply spiced sauce make it a dish I love returning to whenever I crave something warm and satisfying.
A rich, bold beef vindaloo made in one pan with tender beef simmered in a deeply spiced, tangy sauce that tastes restaurant-quality yet is easy to make at home.
Ingredients
2 lbs beef chuck, cut into 2-inch cubes
1 teaspoon salt
1/2 teaspoon freshly cracked black pepper
3 tablespoons neutral oil
1 medium onion, chopped
3 cloves garlic, minced
2 teaspoons garam masala
2 teaspoons ground cumin
1 teaspoon paprika
1 teaspoon turmeric
1/2 teaspoon ground mustard
1/2 teaspoon cayenne pepper (optional)
1/2 teaspoon ground ginger
1/2 teaspoon ground cinnamon
2 tablespoons tomato paste
1/4 cup apple cider vinegar
1 cup low-sodium beef stock (plus more as needed)
Optional for serving: basmati rice, naan, plain Greek yogurt
Instructions
Season the beef cubes with salt and black pepper.
Heat oil in a large skillet over medium-high heat and brown the beef on all sides. Remove and set aside.
Reduce heat to medium and add the chopped onion to the same skillet. Cook until deeply browned and caramelized.
Add garlic and cook until fragrant.
Stir in garam masala, cumin, paprika, turmeric, ground mustard, cayenne, ginger, and cinnamon. Cook until spices bloom.
Add tomato paste and stir to combine.
Pour in apple cider vinegar to deglaze the pan, scraping up browned bits.
Add beef stock and return the beef to the skillet.
Bring to a boil, reduce heat to medium-low, cover, and simmer for about 60 minutes, stirring occasionally.
Add additional stock if needed. Cook until beef is tender and sauce is thick.
Adjust seasoning and vinegar balance if needed, then remove from heat.
Notes
Beef chuck is ideal because it becomes tender during long simmering.
Omit cayenne for a milder vindaloo.
Flavors deepen even more when made a day ahead.
Simmer uncovered briefly to thicken the sauce if needed.
A splash of stock helps loosen leftovers when reheating.