C# Tutorial 13 LINQ Extension Methods


Get the Code Here :
Best C# Book :
Support me on Patreon :

This time I’ll cover LINQ Extension Methods you can use to work with lists of data including Lambda, Where, ToList, Select, Zip, Aggregate and Average. These tools are extremely powerful and they help you solve extremely complex problems easily.

For best results take notes on the cheat sheet provided above as you watch and leave any questions you have.

Thank you to Patreon supporters like the following for helping me make this video

jaryd remillard : instagram: @distant_admiration
jaryd remillard :



  1. That envelope (7:50) reminded me of loading screens in some old war related game (Medal of Honor or Call of Duty), anyone else?

  2. Great video! Helped me understand LINQ code a lot better. Just a small comment on Except(), it returns the set difference of the first list minus the second list (so it's like Distinct() plus also getting rid of the elements in the list argument for Except()).
    …same for Intersect() too (returns the set of intersected elements).

  3. If you have list of objects complexity of this changes big time. Lambda expressions are often used with entity framework to retrieve and manipulate data you select from database which is complete bullshit because nothing beats Stored Procedure.

  4. Plz Make A Video On:
    public List<DerkBansClass> getVideo(List<Videos>){

    return Videos.Where(Derk=>Derk.Videos.StartWith("Linq And Generics And Linq To object advanced").ToList();}
    public static void main(string[]arg){
    List<video>s=new List<video>{Name="Linq And Generics And Linq To object advanced""}

  5. Most of these seem to map to Scheme higher order functions, like map and filter. In the case of aggregate, is a it a foldr or foldl or does it not matter? I see you picked sum but something, like subtract or join, would have vastly different results depending on the order of operation. Any ideas?

  6. (Hoping to learn something extra here..)
    Why did you need to use AsQueryable() when working out the average as Average() sits under the Enumerable class. If you removed the AsQueryable() call and just used .Average() it would have worked,

    Love the videos as always!

  7. Hello Derek
    How you switch on this lines vertical and horizontal which help to see if brackets are in right position? https://drive.google.com/file/d/0BwOXByyTdDDGX0ZKZTVpcUx2c2c/view?usp=sharing


Please enter your comment!
Please enter your name here