You can use Row_number function for this:
SELECT x.Id, x.Name, x.Status, x.Date
FROM
(
SELECT ROW_NUMBER() OVER (PARTITION BY T2.ID ORDER BY T2.Date DESC) as RowNo,
T2.Id, T1.Name, T2.Status, T2.Date
FROM Table-2 as T2 JOIN Table-1 as T1 on T2.Id=T1.Id
)
AS x
WHERE RowNo=1