How do I check if a given value is a generic list?

public bool IsList(object value) { Type type = value.GetType(); // Check if type is a generic list of any type } What's the best way to check if the given object is a list,...