using System.Collections.Generic;
public static void Main()
static void Foo<T>(IEnumerable<T> value) => Console.WriteLine($"Foo<{typeof(T)}>(IEnumerable<{typeof(T)}>)");
static void Foo<T>(params T[] value) => Console.WriteLine($"Foo<{typeof(T)}>(params {typeof(T)}[])");
Foo(Enumerable.Range(1, 42));
Foo(new List<int> { 1, 2, 3 });