It looks like you want to align the movies first in the move / genre area, then group:
var grouped = from movie in movies
from genre in movie.Genres
group movie by genre;
Or avoid query expressions:
var grouped = movies.SelectMany(movie => move.Genres,
(movie, genre) => new { movie, genre })
.GroupBy(pair => pair.genre, pair => pair.movie);
source
share