Paneer is a simple cheese that is easy to make at home. Its fresh flavor highlights the warm spices of this classic North Indian dish. Saag paneer requires a long cooking time for flavors to develop, so avoid using baby spinach, which will fall apart; instead, choose larger, more mature leaves. Find garam masala at Indian and gourmet grocery stores.
8 cups whole milk
1/4 cup plus 1 tsp. lemon juice
5 teaspoons salt
4 pounds spinach, well rinsed and thick stems removed
8 cloves garlic
2 onions, roughly chopped
2 serrano chiles, seeded
1 piece ginger (3 in.), peeled and roughly chopped
2 tablespoons vegetable oil
Seeds from 7 cardamom pods
3 whole cloves
2 bay leaves
1 cinnamon stick
2 tablespoons ground coriander
1 tablespoon ground cumin
1 teaspoon turmeric
1 canned tomato, chopped
1/4 cup whole-milk yogurt
2 teaspoons garam masala
How to Make It
Line a colander with 2 layers of cheesecloth and set in the sink. Bring milk to boil in a large pot over medium-high heat, stirring occasionally to prevent scorching. Let it boil 30 seconds (remove from heat if it starts to boil over) and stir in 1/4 cup lemon juice. Milk will curdle, separating into cheese curds and a clear yellow whey. Pour into cheesecloth-lined colander.
Rinse curds with cold water. Pull up edges of the cheesecloth, gently squeeze out as much water as possible, and form curds into a 6-in. disk. Put cheesecloth-wrapped disk on a large plate, top with a large cutting board, and weigh down with a heavy pot. Put in the refrigerator and let press at least 3 hours and up to overnight.
Meanwhile, bring a large pot of water to boil. Fill a large bowl with ice water and set aside. To boiling water, add 3 tsp. salt and the spinach. Cook 1 minute, then drain and transfer spinach to ice water. Swirl around to cool spinach and drain again. Use your hands to squeeze water from spinach. Set aside.
In a blender, whirl garlic, onions, chiles, ginger, and 1/4 cup of water to make a paste. Set aside.
In a medium pot over medium-high heat, add oil, cardamom, cloves, bay leaves, and cinnamon. Cook until spices darken, about 2 minutes. Add reserved onion paste. Cook, stirring occasionally, until mixture thickens and darkens, about 15 minutes. If the mixture starts to stick, add 1 tbsp. of water at a time, stirring, to help loosen it.
Stir in coriander, cumin, and turmeric. Cook until fragrant, about 2 minutes. Add tomato and yogurt. Cook until thickened slightly, about 3 minutes. Stir in spinach and remaining salt. Turn heat to low and cover. Cook, stirring occasionally, until flavors are blended, about 30 minutes.
Cut paneer into 1/2-in. cubes and gently stir into spinach mixture. Cook until paneer is heated through, about 2 minutes. Add garam masala and remaining lemon juice. Adjust salt and lemon juice to taste. Serve hot, with flatbread or rice.