(from b in books
select new { BookId = b.BookId,
Title = b.Title,
Tags = bookTag.Where(bt => bt.BookId == b.BookId).Select(bt => tags.Single(t => t.TagId == bt.TagId).TagTitle)
}).ToList().Select( t => new
{ BookId = b.BookId,
Title = b.Title,
Tags = string.Join(", ", t.Tags.ToArray())
}