A list is a type of type that implements IEnumerable. What does it mean? If you want to return IEnumerable<PropertyInfo>, you need to create a list (or array, etc.), and then return it. From the outside of the method, it will look like you are returning IEnumerable<PropertyInfo>, but actually it will be a List<PropertyInfo>.
... PropertyInfo, anonymouse. :
public static IEnumerable<PropertyInfo> GetNewsList<T>(int FID)
{
CatomWebNetDataContext pg = (CatomWebNetDataContext)db.GetDb();
var result from nls in pg.NewsCat_ITEMs
join vi in pg.VIRTUAL_ITEMs on nls.NC_VI_ID equals vi.VI_ID
where vi.VI_VF_ID == FID
select new PropertyInfo { SomeMember = nls, SomeOtherMember = vi };
return result.ToList();
}