Heat the olive oil in a large pot or Dutch oven over medium-high heat. Add the ground beef or turkey and cook, breaking it apart with a wooden spoon, until browned, about 5 minutes. If you’re using black beans, add them after the onion and garlic are sautéed.
Add the diced onion and minced garlic to the pot. Sauté until the onion becomes translucent and fragrant, about 3 minutes.
Stir in the enchilada sauce, broth, diced tomatoes, cumin, and chili powder. Mix well to combine all the flavors.
Add the penne pasta to the pot, ensuring it is submerged in the liquid. Bring the mixture to a boil, then reduce the heat to a simmer. Cover and cook for about 15 minutes, stirring occasionally, until the pasta is al dente.
Once the pasta is cooked, remove the pot from the heat. Stir in the shredded cheddar cheese until it melts into the sauce, creating a creamy texture.
Season with salt and pepper to taste. Garnish with fresh cilantro and any additional toppings you desire, such as sliced avocado or sour cream.