In a large pot or Dutch oven, heat the vegetable oil over medium heat. Add the diced onion and sauté until translucent, about 5 minutes. Add the minced garlic and cook for an additional 1 minute until fragrant.
Increase the heat to medium-high and add the ground beef. Cook until browned, breaking it apart with a spoon, about 8-10 minutes. Drain excess fat if necessary.
Stir in the chili powder, cumin, smoked paprika, oregano, and cayenne pepper. Cook for 1-2 minutes to toast the spices.
Add the crushed tomatoes, kidney beans, black beans, and beef broth. Stir well to combine and bring to a simmer.
Reduce heat to low, cover, and let the chili simmer for at least 30 minutes, stirring occasionally. For deeper flavor, simmer for up to 1 hour.
Stir in the apple cider vinegar and season with salt and pepper to taste. Adjust the seasoning as needed.
Serve hot, garnished with chopped cilantro or green onions if desired.