using System.Collections.Generic;
public static void Main()
var objects = new List<Object>{1, 2, 3, 4};
var convertedList = ConvertList(objects, typeof (List<int>));
Console.WriteLine(convertedList.GetType().Name);
Console.WriteLine(convertedList.GetType().GetGenericArguments().First().Name);
public static object ConvertList(List<object> value, Type type)
var containedType = type.GenericTypeArguments.First();
return value.Select(item => Convert.ChangeType(item, containedType)).ToList();