While the hierarchy you posted above really doesn’t make much sense to me (seems RoomType and Room are backwards), I’ll post an example to go with it:
Hotels.SelectMany(h => h.RoomType)
.Select(rt => rt.Room.Id)
.Distinct()
.ToArray();