Em C#, expressões lambda são utilizadas para declarar funções anônimas que podem e declarações ou uma expressão 
                como retorno em seu corpo. 
            
            
                Expressões lambda possui as formas abaixo e utilizam o operador (=>) para identificar sua declaração:
            
            Sintaxe
            
() => { declaracoes } 
            
(lista_parametros) => expressao_retorno;
            
(lista_parametros) => { declaracoes }
            
                O uso de () para delimitar os parâmetros de uma expressão lambda é opcional. O uso de {} pode 
                ser omitido caso seu corpo contenha apenas uma expressão aritmética ou lógica, por exemplo, como retorno.
            
            
            
                Lambda pode ser usadas em conjunto com Func, Action e Predicate. Essas assuntos serão 
                vistos em mais adiante.
            
            Sintaxe
            
Action<T> nome_action = (T parametro) => expressao; 
Func<T> nome_func  = (T parametro) => expressao;
            Onde
            
T: Tipo de dado do parâmetro 
expressao: Expressão de retorno
            
                Para invocarmos uma expressão lambda, utilizamos seu nome no e seus repectivos argumentos passados:
            
            Sintaxe
            
nome_action(lista_argumentos);
tipo_retorno nome_variavel = nome_action(lista_argumentos);
            
                No exemplo 1 abaixo, uma expressão Lambda foi declarada utilizando Func. Um expressão aritmética
                de soma foi declarada como retorno.
            
            Exemplo 1
            
using System;
public class Program
{
	public static void Main()
	{
        //<int, int, int> - parâmetro, parâmetro, retorno
		Func<int,int,int> soma = (x,y) => (x + y); 
        int ret = soma(10,10);
		Console.WriteLine();
	}
}
            Saída
            
20
110
            
                As sintaxes acima são apenas ilustrativas para o uso de Action e Func com apenas um parâmetro.