Think this is what you are looking for:
class Program
{
static void Main(string[] args)
{
var listA = new List<A>
{
new A{Id = 1, BId = 1, AName = "A" },
new A{Id = 2, BId = 2, AName = "B" },
};
var listB = new List
{
new B{Id = 1, description = "dA" },
new B{Id = 2, description = "dB" },
};
var result = listA.Select(a =>
new { Id = a.Id, Name = a.AName, count = listB.Count(b => b.Id == a.Id) });
}
class A
{
public int Id { get; set; }
public int BId { get; set; }
public string AName { get; set; }
};
class B
{
public int Id { get; set; }
public string description { get; set; }
};
}