Converter uma matriz de string C # em um dicionário

Existe uma maneira elegante de converter este array de strings:

string[] a = new[] {"name", "Fred", "colour", "green", "sport", "tennis"};

em um dicionário tal que cada dois elementos sucessivos da matriz se tornem um par {key, value} do dicionário (quero dizer {"name" -> "Fred", "color" -> "green", "sport" -> "tênis"})?

Eu posso fazer isso facilmente com um loop, mas existe uma maneira mais elegante, talvez usando o LINQ?

questionAnswers(7)

yourAnswerToTheQuestion