Wielu programistów, zwłaszcza tych początkujących, przez cały czas kurczowo trzyma się tablic, jako uniwersalnego sposobu na przechowywanie dużej ilości określonych zmiennych/obiektów. I może jest to jakaś opcja, ale sumarycznie tablice dają duże ograniczenia. Deklarując tablicę, trzeba znać z góry ustaloną ilość elementów jaka będzie miała się znaleźć w tej tablicy i tym samym alokując dużą ilość pamięci już na starcie (być może taką ilość, której nawet nie wykorzystamy), ponadto tablice nie mają wielu przydatnych metod, np. do wyszukiwania elementów i generalnie są po prostu mało elastyczne. Warto wiedzieć, że w przypadku większości nowoczesnych języków programowania, istnieje alternatywa. Tą alternatywą są kolekcje, które rozwiązują przytoczone wyżej problemy. W dzisiejszej notce, zaprezentuje trzy rodzaje kolekcji dostępne w języku C# i przedstawię garść metod z jakich można korzystać w ich przypadku (w większości bazując na liście).