F # List.map equivalente em c #?

Existe um equivalente à função List.map do F # em C #? isto é, aplica uma função a cada elemento da lista e retorna uma nova lista contendo os resultados.

Algo como:

    public static IEnumerable<TResult> Map<TSource, TResult>(this IEnumerable<TSource> source, Func<TSource, TResult> funky)
    {
        foreach (TSource element in source)
            yield return funky.Invoke(element);
    }

Já existe uma forma embutida ou devo apenas escrever a extensão personalizada?

questionAnswers(2)

yourAnswerToTheQuestion