Soak urad dal for 3 hours, after washing in water.
Grind it with ginger, green chilli adding only very little ice cold water at a time. Batter should be fluffy.
Mix with salt only at the time you are going to deep fry.
Wet your hands and make small lemon sized balls.
Deep fry in hot oil in medium flame until golden colour in all sides.
Flip in between for even cooking. Drain in paper towels.
Heat milk until its hot,no need to boil it, and then take it in a broad bowl, add little bit of salt and fried vadas to the milk and let it get soaked. say 20 minutes or so.
Turn over carefully in between.
Beat curd until smooth. If you feel milk is more even after soaking the vada, drain it and mix required amount to the curd to make it runny (still thick) consistency and add the curd to the soaked vadas and mix well.
Add required salt and let it set for 1/2 hour.
You can just soak for 1 or 2 hours too and grind coarsely if you like textured vada.
I use milk because, I love my dahi vada not to be so sour, if you want you can also do this in water.
If using water, squeeze the excess water gently without breaking the vada..
In case the vada batter is sticky or watery, add a tbsp of rice flour and try refrigerating the batter for an hour.
Always cook vadas in medium flame to ensure cooking in the middle.
Add vadas to hot/warm milk or water to get soaked quickly.
If it is too hot, vada might break. Also the vada should be firm enough to hold shape, too soft vada will break in soaked curd.
Adding more water while grinding vada batter will make it too soft.
Sev garnishing is optional, traditionally boondi is used for garnish.