Rinse the chiles in cold water and pat dry.
12 ancho chilies
Tear open the chilies, and remove the seeds. It's okay if a few seeds remain.
Heat a large skillet over medium heat. Add the chilies, onions, and garlic and roast them, stirring frequently, until the onions are charred in places and the chiles are aromatic, about 10 minutes. Set aside.
1 medium onion, 3 cloves garlic
Meanwhile, in a separate pot, bring about 6 cups of water to a boil. Set up an ice bath by filling a large bowl with water and adding at least a cup of ice. Carefully drop the tomatoes into the boiling water and then remove with a slotted spoon after 30 seconds. Place in the ice bath.
5 medium tomatoes
Remove the tomatoes into an ice bath and peel off the skin (you may need the end of a paring knife to help you start peeling the skin away). Cut out the top of the tomatoes where the stems were and then cut the tomatoes in half.
Discard the water used for the tomatoes, and add 4 cups of water, the beef stock, and the tomato sauce. Bring to a simmer.
2 cups beef stock, 1 cup tomato sauce
Transfer the chilies, onions, garlic and tomatoes to the water/stock. Add in the oregano and cumin. Lower the heat to low/medium and simmer for about 15 minutes
1 tsp Mexican oregano, 1 tsp dried cumin
Working in batches, carefully transfer the chili mixture to a blender or large food processor. Puree for about 1 minute, until very smooth.
Pass the puréed sauce through a fine colander or fine-mesh sieve into a heat-proof bowl.
Return the strained sauce to the stove and heat for about 15 minutes. Add 2½ tsp salt. Taste and add another ½ tsp, if desired.
2½ tsp Kosher salt
Use at once, or store in a container with a tight-fitting lid. Keep in the fridge for up to 1 week or freeze for up to 2 months.