Preheat and prep. Heat the oven to 375°F (190°C).
Grease a 9x13-inch baking dish with a little oil or cooking spray.
Cook the aromatics. In a large skillet over medium heat, warm the olive oil. Add the chopped onion and cook 3–4 minutes until translucent. Stir in the garlic and cook 30 seconds until fragrant.
Brown the beef. Add the ground beef to the skillet.
Break it up with a spoon and cook until browned, about 6–8 minutes. Drain excess fat if needed.
Season it right. Stir in chili powder, cumin, smoked paprika, oregano, salt, and pepper. Cook 1 minute to bloom the spices.
Add moisture and flavor. Pour in 1/2 cup broth and 1/2 cup enchilada sauce.
Simmer 2–3 minutes until slightly thickened. If using beans, corn, or green chiles, fold them in now. Taste and adjust seasoning.
Warm the tortillas. To prevent cracking, wrap tortillas in a damp paper towel and microwave 30–45 seconds.
Alternatively, briefly toast them in a dry skillet.
Assemble the first layer. Spread a thin layer (about 1/3 cup) of enchilada sauce on the bottom of the baking dish. Arrange 4–5 tortillas in a single layer, overlapping slightly to cover the base.
Add the beef and cheese. Spoon half of the beef mixture over the tortillas. Sprinkle with about one-third of the cheese.
Drizzle a little sauce (2–3 tablespoons) over the top.
Repeat. Add another layer of tortillas, the remaining beef, and another portion of cheese. Top with a final layer of tortillas and most of the remaining sauce, spreading evenly.
Finish with cheese. Sprinkle the remaining cheese over the top. You want full coverage for that golden, melty finish.
Bake. Cover loosely with foil and bake 15 minutes.
Remove the foil and bake another 10–12 minutes, until the cheese is bubbly and lightly browned at the edges.
Rest and garnish. Let the casserole rest 10 minutes before slicing. Top with cilantro, green onions, and any other desired garnishes.