Try this:
DECLARE @fam TABLE (FamilyID VARCHAR(3), MemberID INT NULL, MemberName VARCHAR(30), Gender VARCHAR(2) NULL, Age INT NULL)
INSERT INTO @fam (FamilyID, MemberID, MemberName, Gender, Age)
SELECT '001' AS FamilyID, NULL AS MemberId, 'dharm' AS MemberName, 'M' AS Gender, NULL AS Age
UNION ALL SELECT '002', NULL, 'mukesh', 'M', NULL
UNION ALL SELECT '002', NULL, 'sagr', 'M', NULL
UNION ALL SELECT '002', NULL, 'sfsfsf', 'M', NULL
UNION ALL SELECT '003', NULL, 'dfdff', NULL, NULL
UNION ALL SELECT '003', NULL, 'dfdfgd', 'F', NULL
UNION ALL SELECT '004', NULL, 'dffff', 'F', NULL
UNION ALL SELECT '004', NULL, 'safaf', 'F', NULL
UNION ALL SELECT '004', NULL, 'sdafsa', 'F', NULL
UPDATE t1 SET t1.MemberID = t2.MemberId
FROM @fam AS t1 INNER JOIN (
SELECT FamilyID, ROW_NUMBER() OVER(PARTITION BY FamilyID ORDER BY MemberName) AS MemberID, MemberName
FROM @fam
) AS t2 ON t1.FamilyID = t2.FamilyId AND t1.MemberName = t2.MemberName
SELECT *
FROM @fam