This produced the results I needed: -
var data = await _context.Books.Include(i => i.Genre)
.GroupBy(b => b.Genre)
.Select(g => new { name = g.Key, id = g.Key.Id,
description = g.Key.Description,
count = g.Count() })
.ToListAsync();