C# Interview Question #42

What is the difference between LINQ query syntax and method syntax?

LINQ & Querying Mid-Level Intermediate

Quick Interview Answer

LINQ supports query syntax and method syntax. Query syntax resembles SQL, while method syntax uses extension methods and lambda expressions.

Detailed Explanation

LINQ supports query syntax and method syntax. Query syntax resembles SQL, while method syntax uses extension methods and lambda expressions.

Both approaches often compile into equivalent method calls. Method syntax is more commonly used in production C# because every LINQ operator is available through it, whereas some operations cannot be expressed directly with query syntax.

The choice is usually based on readability and team conventions.

Code Example

// Query syntax
var result1 =
    from p in products
    where p.Price > 100
    select p;

// Method syntax
var result2 = products
    .Where(p => p.Price > 100);