Como filtrar Directory.EnumerateFiles com vários critérios?

Eu tenho o seguinte código:

List<string> result = new List<string>();

foreach (string file in Directory.EnumerateFiles(path,"*.*",  
      SearchOption.AllDirectories)
      .Where(s => s.EndsWith(".mp3") || s.EndsWith(".wma")))
       {
          result.Add(file);                 
       }

Funciona bem e faz o que eu preciso. Exceto por uma pequena coisa. Gostaria de encontrar uma maneira melhor de filtrar em várias extensões. Eu gostaria de usar uma matriz de string com filtros como este:

string[] extensions = { "*.mp3", "*.wma", "*.mp4", "*.wav" };

Qual é a maneira mais eficiente de fazer isso usando o NET Framework 4.0 / LINQ? Alguma sugestão?

Agradeço qualquer ajuda sendo um programador ocasional :-)

questionAnswers(7)

yourAnswerToTheQuestion