Heat olive oil in a large pot over medium heat. Add onions and garlic, sautéing until softened, about 5 minutes.: The air will scent faintly of warm oil as it shimmers, a signal that the pan is ready. This step is crucial because adding aromatics to oil releases their flavors more evenly, creating a gentle sizzle that lets the onion soften rather than stick. If the oil smokes you have the heat too high, so lower the flame and wipe the pan before trying again. A common mistake is rushing this step and adding ingredients to oil that is either too cool or too hot, which prevents proper sweating of the aromatics.
Increase heat to medium-high and add ground beef, cooking until browned. Drain excess fat if necessary.: As the onion sweats you will notice it turning translucent and sweet, while the garlic releases a warm, toasty aroma. Pay attention to the sound change from vigorous sizzle to a gentler whisper, that tells you the moisture is releasing and the aromatics are tenderizing. Stir frequently to avoid localized browning, because burnt bits can make the whole pot taste acrid. If your garlic begins to brown too quickly, pull the pan off heat briefly to cool it down.
Stir in chili powder, cumin, oregano, salt, and pepper, cooking for another minute until fragrant.: When the ground beef hits the hot surface you will hear a satisfying sear, and those browned bits will accumulate and add deep savory notes. Break the meat into pieces so it browns evenly and develops texture instead of steaming. Drain excess fat if you see a pool forming, because too much oil will dilute the chili and make it greasy. A mistake here is stirring too often before the meat has a chance to brown, which prevents the caramelized flavor from developing.
Add black beans, diced tomatoes with their juice, dark chocolate, and beef broth to the pot. Bring to a simmer.: The pot will bloom with spice aroma as the heat coaxes essential oils from the dried spices, a small but dramatic transformation. This moment is vital to unlocking their full flavor, so give them a minute to toast gently with residual heat. Watch closely, because spices can turn bitter if left too long without moisture. If the mixture looks dry, a splash of broth will prevent scorching.
Reduce heat to low and let the chili simmer, uncovered, for 20-25 minutes, stirring occasionally.: When the canned tomatoes and broth hit the browned base they create a comforting steam and the scent will shift toward savory tomato richness. The dark chocolate will sink, soften, and dissolve into the liquid, adding a subtle bittersweet note that rounds acidity. Stir thoroughly so the chocolate disperses evenly; if you see clumps, warm gently while stirring until it melts. A common pitfall is adding chocolate too early at high heat, which can scorch and create graininess instead of a silky finish.
Serve the chili hot with your choice of toppings.: You will see small bubbles forming at the edges as the pot settles into a gentle simmer, that slow movement is perfect for melding flavors without over reducing the liquid too fast. Simmering allows the spices to integrate with the meat and beans, and it creates a cohesive texture. Avoid a rolling boil which can break down beans and toughen meat; if you notice vigorous bubbling, reduce the heat until it calms down.
Reduce heat to low and let the chili simmer, uncovered, for 20 to 25 minutes, stirring occasionally: During this gentle cook the broth will thicken slightly and the flavors will concentrate, giving you that warm, rounded character. You should smell the chocolate alongside tomato and spice, and the surface may develop a few glossy ripples as it reduces. Stir occasionally to prevent sticking on the bottom, and skim any foam if it appears to keep the broth clear. Leaving it unattended is the usual mistake here, because a sticky bottom can ruin the texture of the finished chili.
Serve the chili hot with your choice of toppings: The final bowl should steam invitingly with a complex aroma and a velvety mouthfeel where the dark chocolate lingers in the background. Choose simple toppings that complement without overshadowing, and ladle the chili into warmed bowls for best results. A common serving error is to add salty toppings before tasting, which can push the balance too far; always taste first and adjust if needed.