Heat milk, bring it to boil. Then add curd and keep stirring. Allow it to curdle.
Stir continuously till the whey water clears and the milk curdles completely. Now switch off the stove, add ice cubes and allow it to melt completely. You can clearly see the whey water now.
Take a muslin cloth and pour the curdled milk, filtering the whey water completely. Wash it well in running cold water if you have used lemon juice to remove the lemon flavour.
Squeeze the excess water and hang it aside for 30mins without disturbing it. After 30mins, the paneer would be crumbly in texture.
Now knead it well for atleast 20mins. This is the most important step as kneading for more time ensures soft and spongy rasgullas, so don't lose patience. See how soft the dough has become after kneading for 20mins.
Now pinch a small portion of the dough, form smooth balls and keep aside. I made around 20 balls, Set aside.
Heat water in a wide bottomed vessel, then add sugar.
Keep it in flame and keep stirring till sugar dissolves completely, Simmer for 5mins.
When the sugar syrup boils and starts bubbling, add the balls slowly one by one. The balls will go to the corner, move them to the middle.
Keep in medium flame and close with a lid. Cook covered for 10mins.
After 10 mins, the balls would be closely doubled in size. Switch off and keep it closed aside for 15mins.
Then cool down and add chopped pistachios and chill it until serving time.
Serve Rasgulla chilled!