The hadeeth mentioned is saheeh; the Prophet (peace and blessings of Allaah be upon him) said to Abu Talhah al-Ansaari, when he wanted to give in charity a date-palm grove of his called Bayraha’, “I think that you should give it to your relatives.” (Saheeh, agreed upon). That was concerning voluntary charity. But in the case of zakaah, there are more rulings to be borne in mind: if the relatives are not in the direct line of ascent or descent, it is permissible to give zakaah to them if they are poor, and this will be an act of charity as well as upholding ties of kinship. This also applies to your grandfather’s wife, if she is not your real grandmother and she is poor and has no children to spend on her. You have to make up for what you have spent on your maternal grandmother (your mother’s mother) and on your (paternal) grandfather’s wife, if she was of independent means because of someone other than yourself spending on her. And Allaah knows best.