In a heavy pan heat milk and salt over medium-high heat. Stir frequently, scraping the bottom of the pot until boiling (turn down the heat if sticking), and add lemon juice or vinegar. Stir the milk thoroughly and remove from heat immediately.
The milk should start curdling immediately. Allow to stand for 5 to 10 minutes to allow it to separate fully into curds and thin blue to yellowish liquid (whey). If your mixture is not separating, add another tablespoon of acid. Add salt and mix briefly to combine. Add ice, if using (see Notes) and stir until dissolved.
Line a colander with cheesecloth, muslin, or a kitchen towel, making sure that you have 2 to 3 inches hanging over the rim. Place the colander over a bowl so that you can catch the whey, if saving, and pour the curds and whey in the lined colander.
Let drain and cool slightly to the touch. Gather the cloth tightly around the paneer, and gently squeeze out excess whey. Leave in the cheesecloth or towel in the colander, and flatten into a square about 1 inch (2.5 centimeters) thick. Place a plate on top and weight with a large can of tomatoes, or a bowl of water, and let sit for 20 to 30 minutes.
You can use your cheese right away, or store in the refrigerator wrapped tightly in plastic wrap, for 2 days, or 6 months if stored in the freezer. Defrost in the refrigerator for the best texture. For each quart (4 cups of whole milk) you will get approximately 3 ounces of paneer, so this recipe yields at least 6 ounces of cheese.
Notes
Here is my best tips (caveat, I have not made paneer with milk that is less than full fat, try at your own risk) on how to make paneer:
If you want a very smooth and creamy paneer, add about 8 ice cubes to the mixture immediately after the curds and whey have separated.
You can use either lemon or distilled vinegar, no need to rinse the cheese, which some cooks recommend.
Type of milk: I have not tried 1% milk though I have read it works, however, your cheese will be more dry and crumbly.If you are wanting nice cubes for palak paneer, for example, you are best off using whole milk.
Almost every paneer recipe I have found does not use salt. I found two recipes using salt, one from Saveur, and one from TheKitchn.com.To my taste, paneer tastes so much better with at least with some salt. Most recipes using paneer includes a very flavorful sauce, so you may decide you don’t need to add salt.
The leftover whey has nutritional value and can be used for soups, or as a liquid in making naan, or other bread.
Don’t press and drain your paneer too long, or it will dry out and get crumbly.
The cheese will be firmer if you refrigerate for at least 30 minutes.
This recipe is easily doubled, but make sure you have a large enough pot so it won’t bubble over.
I have tried using half and half to see how that would work and I found the final result to be crumbly, and I wouldn’t use it again.