IEnumerable vs List in C# Programming

R M Shahidul Islam Shahed
2 min readAug 13, 2023

IEnumerable and List are both important concepts in C# that relate to collections and data manipulation, but they serve different purposes.

IEnumerable vs List in C#

Let's explore the differences between IEnumerable and List:

IEnumerable:

  • IEnumerable is an interface in C# that represents a collection of objects that can be enumerated (iterated) one at a time.
  • It provides a standard way to traverse elements in a collection without exposing the underlying implementation.
  • IEnumerable is more about abstraction and laziness, meaning that it doesn't load the entire collection into memory at once but rather retrieves elements on demand.
  • It has a minimal set of methods like GetEnumerator() which returns an enumerator to iterate through the collection.

List:

  • List is a concrete class in C# that implements the IEnumerable interface.
  • It’s a dynamic array-like structure that can hold a collection of elements of the same type.
  • List allows fast random access to elements by their index and provides methods for adding, removing, and manipulating elements.
  • It’s part of the System.Collections.Generic namespace and offers additional methods and properties…

--

--