what is @Html.ValidationMessageFor and how can i use it.

what is @Html.ValidationMessageFor and how can i use it.

Hi
 
Could you please let me know the steps involved i using @Html.ValidationMessageFor
 
and does it do validation on client side or server side. Does it mean it will show the
 
annotation messages we write  to the model properties. Please explain each step involved in implementing it.
 
Thank you,
Best regards,
Joseph.