LINQ es un conjunto de extensiones de .NET Framework que abarca operaciones de consulta integrada del lenguaje, conjuntos y transformaciones. Amplía C# y Visual Basic con sintaxis de lenguaje nativo para las consultas a bases de datos como SQL y XML, y proporciona bibliotecas de clases para sacar partido de estas capacidades, facilitando así la recuperación, modificación y eliminación de la información (Microsoft).
De este modo, en vez de añadir características específicas para el tratamiento de datos relacionales (XML) a los diferentes lenguajes de programación y motores de ejecución, con el proyecto LINQ se consigue un enfoque más universal, añadiendo facilidades de consulta de propósito general aplicables a todas las fuentes de información, y no solo a los datos relacionales. Esta facilidad se llama “Consultas integradas en los lenguajes” 1 (MSDN, El proyecto LINQ, 2006)
Por otro lado, y teniendo en cuenta el avance de la tecnología y el nacimiento de los procesadores multinúcleo, el paradigma de LINQ cambia de perspectiva y en el Framework 3.0 de .NET, nace una nueva versión de implementación en paralelo para el modelo llamado Parallel LINQ (PLINQ), que permite realizar consultas utilizando la potencia del procesamiento en paralelo.