¿Cómo usar LINQ para seleccionar un objeto?

Tengo datos que se ven así:

UserId   |  SongId
--------   --------
1          1
1          4
1          12
2          95

También tengo la siguiente clase:

class SongsForUser
{
    public int User;
    public List<int> Songs;
}

Lo que me gustaría hacer es usar LINQ para seleccionar de mis datos para crear una colección de objetos SongsForUser. A continuación es lo que he encontrado hasta ahora:

var userCombos = songs.UserSongs.Select(x => new SongsForUser() { User = x.UserId, 
                                                                  Songs = /*What goes here?*/ });

¿Cómo voy a poblar miSongs ¿Lista?

Así que el resultado debe ser dos objetos SongsForUser. Para el usuario1 tendría 3 artículos en elSongs lista. Para el usuario2 tendría 1 elemento en elSongs lista.

Respuestas a la pregunta(4)

Su respuesta a la pregunta