Hace unos años leí un artículo de C. L. Moffatt (link), donde se explicaba de forma clara y concisa los diferentes tipos de joins en SQL, y tomé la idea de escribir un artículo similar pero enfocado a LinQ, ya que había visto en muchas ocasiones muchas preguntas en foros dirigidas a este tema, pero no he encontrado ninguna en la que aune todos y cada uno de los casos.
Espero dar algo de luz con las líneas que siguen.