Quick Recipe Version (TL;DR)
Quick Ingredients
- 3 lb beef chuck roast, trimmed and cut into 1.5-inch cubes
- 2 tsp kosher salt, plus more to taste
- 1 tsp black pepper
- 2 tbsp lard or neutral oil
- 6 dried ancho chiles (about 2 oz)
- 4 dried guajillo chiles (about 1 oz)
- 1 large yellow onion, chopped
- 8 garlic cloves
- 2 tbsp ground cumin
- 1 tbsp dried Mexican oregano
- 2 tbsp tomato paste (optional but recommended)
- 12 oz dark lager or amber beer
- 3 cups low-sodium beef stock
- 1 oz 70% dark chocolate
- 1 tbsp apple cider vinegar
- 1 tbsp masa harina mixed with 2 tbsp water (optional, to thicken)
Do This
- 1. Heat oven to 300°F. Season beef with salt and pepper.
- 2. Toast anchos and guajillos 1–2 minutes per side; soak in hot water 20 minutes.
- 3. Blend chiles with 1 cup soaking liquid, 4 garlic cloves, 1 tbsp cumin, and oregano to a smooth puree.
- 4. Brown beef in a Dutch oven in hot fat, working in batches; remove.
- 5. Sauté onion and remaining garlic; bloom remaining cumin, stir in tomato paste; deglaze with beer.
- 6. Add chile puree and beef stock; return beef; cover and braise 2.5–3 hours until fork-tender.
- 7. Stir in chocolate and vinegar; season; thicken with masa if desired. Rest 10 minutes; serve over warm tortillas or rice.
Why You’ll Love This Recipe
- True Texas-style: no beans, no fuss—just deeply flavored, chile-forward, beefy chili.
- Toasted ancho and guajillo chiles bring a rich, fruity heat without overwhelming spice.
- A splash of beer and a whisper of dark chocolate add complexity and a glossy finish.
- Meal-prep friendly—tastes even better the next day and freezes beautifully.
Grocery List
- Produce: 1 large yellow onion, 1 head garlic (8 cloves), limes (for serving), cilantro, jalapeño (optional)
- Dairy: Optional sour cream or shredded cheddar for topping (not traditional)
- Pantry: Beef chuck roast, dried ancho chiles, dried guajillo chiles, ground cumin, Mexican oregano, kosher salt, black pepper, tomato paste, lard or neutral oil, dark lager/amber beer, low-sodium beef stock, 70% dark chocolate, apple cider vinegar, masa harina, flour tortillas or long-grain rice
Full Ingredients
Beef
- 3 lb beef chuck roast, trimmed and cut into 1.5-inch cubes
- 2 tsp kosher salt, plus more to taste
- 1 tsp freshly ground black pepper
- 2 tbsp lard, bacon fat, or neutral oil
Dried Chile Puree
- 6 dried ancho chiles (about 2 oz), stems and seeds removed
- 4 dried guajillo chiles (about 1 oz), stems and seeds removed
- 1–2 cups just-boiled water (for soaking; use 1 cup for blending)
- 4 garlic cloves
- 1 tbsp ground cumin
- 1 tbsp dried Mexican oregano, lightly crushed
Chili Base & Braise
- 1 large yellow onion, finely chopped
- 4 garlic cloves, minced
- 1 tbsp ground cumin (in addition to the puree)
- 2 tbsp tomato paste (optional but recommended)
- 12 oz dark lager or amber beer
- 3 cups low-sodium beef stock
To Finish
- 1 oz 70% dark chocolate, finely chopped
- 1 tbsp apple cider vinegar
- 1 tbsp masa harina mixed with 2 tbsp water (optional, to thicken)
Optional Garnishes & Sides
- Chopped white onion, chopped cilantro, sliced jalapeño, lime wedges
- Warm flour tortillas or cooked long-grain rice

Step-by-Step Instructions
Step 1: Prep the beef
Pat the beef cubes dry with paper towels. Season all over with 2 tsp kosher salt and 1 tsp black pepper. Preheat the oven to 300°F. Set a heavy 5–7 qt Dutch oven over medium-high heat and add the lard or oil.
Step 2: Toast and soak the chiles
Heat a dry skillet over medium heat. Toast the ancho and guajillo chiles in batches, pressing them flat with tongs, until fragrant and slightly pliable, about 30–60 seconds per side. Do not let them scorch. Transfer to a bowl and cover with just-boiled water. Soak until softened, about 20 minutes. Reserve 1 cup of the soaking liquid.
Step 3: Make the chile puree
In a blender, combine the softened anchos and guajillos, 1 cup reserved soaking liquid, 4 garlic cloves, 1 tbsp cumin, and the Mexican oregano. Blend until completely smooth and velvety, 60–90 seconds. If needed, add a splash more liquid to help it blend. Set aside.
Step 4: Brown the beef
Working in 2–3 batches to avoid crowding, sear the beef in the hot Dutch oven until deeply browned on at least two sides, 7–9 minutes per batch. Add more fat if the pot looks dry. Transfer browned beef to a bowl and repeat with remaining batches.
Step 5: Build the flavor base
Lower heat to medium. Add the chopped onion and a pinch of salt to the pot; cook, stirring and scraping up fond, until translucent and lightly golden, 5–7 minutes. Stir in the minced garlic and remaining 1 tbsp cumin; cook 30 seconds. Add tomato paste and cook, stirring, until it darkens slightly, 1–2 minutes.
Step 6: Deglaze and add liquids
Pour in the beer, scraping the bottom to release browned bits. Simmer 2 minutes to reduce slightly. Stir in the chile puree and the beef stock, bringing the mixture to a gentle simmer. Return the browned beef and any accumulated juices to the pot. Cover with a tight-fitting lid.
Step 7: Slow-braise until tender
Transfer to the oven and braise at 300°F until the beef is fork-tender but still in chunky pieces, 2.5–3 hours. Check once halfway through; if the liquid reduces too much, add 1/2 cup water or stock to keep the beef mostly submerged.
Step 8: Finish, thicken, and serve
Set the pot on low heat on the stovetop. Stir in the chopped dark chocolate until melted and glossy, then add the apple cider vinegar. Taste and season with salt as needed. For a thicker body, stir in the masa harina slurry and simmer 3–5 minutes. Let the chili rest 10 minutes before serving. Spoon over warm tortillas or rice and top with onion, cilantro, jalapeño, and a squeeze of lime.
Pro Tips
- Cut beef into even 1.5-inch cubes so they stay juicy through the long braise.
- Toast chiles just until fragrant—burnt chiles turn the entire pot bitter.
- Blooming spices in fat and tomato paste deepens flavor and color.
- Oven braising at 300°F gives steadier heat than a stovetop simmer and reduces scorching risk.
- Even better next day: chill overnight, remove any solidified fat, and reheat gently.
Variations
- Extra Heat: Add 1–2 dried árbol chiles to the puree or a pinch of cayenne with the cumin.
- Smoky Twist: Substitute 1/2 cup of the beer with strong brewed coffee and add 1/2 tsp smoked paprika.
- Pressure Cooker: Sear as directed, then cook on High Pressure for 45 minutes with natural release 15 minutes. Finish with chocolate, vinegar, and optional masa.
Storage & Make-Ahead
Refrigerate in a covered container up to 4 days; flavors improve after 24 hours. Freeze up to 3 months in quart containers. Reheat gently over low heat with a splash of stock or water until loosened and steaming. If the sauce thins after freezing, simmer 3–5 minutes or add 1–2 tsp masa slurry to restore body.
Nutrition (per serving)
Approximate for 1 of 8 servings: 480 calories; 28g fat; 12g carbohydrates; 36g protein; 2g fiber; 900mg sodium. Values vary by ingredients and toppings.

