When can we use them? Are they the same or different? Are they used in different situations?
Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.
girl can be used in almost any situation, and just refers to a female of any age, however, it's more common to use the term for females under 30.
lady can be used in almost any situation, and is more respectful in my opinion. There is a common term called "lady like" , which implies that ladies act like females should. They are caring, pleasant, have good manners, etc.
woman is a tricky one, since it can be used in situations to show disrespect, such as a man claiming he is superior than a woman. Woman is fine though when describing a female above the age of 18, as long as it's not in a chauvinistic or demeaning way. And woman is likely preferred by most females that are above the age of 18. However, it's probably more common for women above 25 to be called woman, and under 25 to be called girl.