Preheat the broiler to high and place the top rack about 6 inches from the element.
Arrange the poblanos on a baking sheet and broil until the skins blacken in spots, about 8–10 minutes, turning once; transfer to a heat-proof bowl and cover with plastic wrap for 15 minutes.
When cool enough to handle, peel the poblanos, remove stems and seeds, open and set aside.
Broil the tomatillos, serranos, sliced onion, and halved garlic on a baking sheet until lightly charred, about 10–12 minutes.
Transfer the roasted tomatillos, serranos, onion, and garlic to a blender. Add 1/2 cup cilantro and blend until smooth.
Heat 1/4 cup vegetable oil in a large saucepan over medium heat. Add the blended tomatillo mixture and cook, stirring, 3–5 minutes.
Stir in 4 cups chicken (or vegetable) broth, simmer until slightly thickened and coats the back of a spoon, about 20 minutes.
Remove from heat and stir in 1 1/2 cups Mexican crema, 1 1/2 teaspoons kosher salt, and 1/2 teaspoon black pepper; set the sauce aside.
Heat oven to 350°F (175°C).
Heat 1 tablespoon vegetable oil in a medium skillet over medium heat. Quickly pass each corn tortilla through the hot oil, flipping immediately, so each tortilla is briefly fried and softened; drain on paper towels. Repeat for all 18 tortillas.
Spoon about one-quarter of the sauce across the bottom of a 9x13-inch baking dish.
Layer tortillas (use four whole tortillas plus one halved), spread more sauce over them, then top with half the chopped chicken, a sprinkle of salt if needed, one-third of the cheese, and half of the roasted poblanos.
Add another layer of tortillas, sauce, the remaining chicken, and the remaining poblanos.
Top with a final layer of tortillas, the remaining sauce, and the remaining cheese.
Bake the casserole at 350°F for 25–30 minutes, until bubbly and lightly browned. Let rest 5–10 minutes before slicing.
Garnish with chopped cilantro and serve with pico de gallo and sour cream or additional Mexican crema.