entre dois tempos ficou facil e preciso.Neste artigo vou mostrar como calcular a diferenca entre tempos usando os metodos e classes disponiveis no C#Um exemplo pratico ira esclarecer melhor. Vou calcular a diferenca entre dois eventos.Crie um novo projeto no C# e no formulario padrao coloque um botao de comando com o texto Iniciar e uma label com a propriedade Text vazia.Vai funcionar assim : Quando o usuario clicar no botao Iniciar iremos definir as variaveis do tipo DateTime para calcular a diferenca entre os tempos: t_inicio - recebera o valor do tempo quando o evento iniciar t_fim - recebera o valor do tempo no fim do evento t_diferenca - recebera a diferenca calculada entre os tempos Apos clicar no botao o texto sera alterado para - Parar - Quando o usuario clicar em - Parar - o evento sera encerrado e a diferenca entre os tempos calculada e exibida. O codigo associado ao evento Click do botao - btnMedir - e dado a seguir: {DateTime t_inicio;DateTime t_fim;TimeSpan t_diferenca; if (btnMedir.Text == "Iniciar" ) { lblDiferenca.Text = ""; t_inicio = DateTime.Now; btnMedir.Text = "Parar"; }else { t_fim = DateTime.Now; t_diferenca = t_fim.Subtract(t_inicio); lblDiferenca.Text = t_diferenca.TotalSeconds.ToString("0.000000") + " segundos"; btnMedir.Text = "Iniciar"; }} A magica esta na classe TimeSpan usada e no metodo Subtract usado para calcular a diferenca entre os tempos.Note que para expressar a diferenca em segundos estou usando a propriedade TotalSeconds.A classe TimeSpan representa um intervalo de tempo . O valor e medido em numeros de ticks contido em uma instancia e pode variar de Int64.MinValue a Int64.MaxValue .(Um tick e a menor unidade de tempo que pode ser definida e e igual a 100 nano segundos). Podemos representar um TimeSpan como uma string no formato "[-]d.hh:mm:ss.ff" onde "-" e um sinal opcional para valores negativos. Os principais metodos e propriedades de TimeSpan sao : Propriedades Publicas Days Obtem o numero total de dias representado pela instancia Hours Obtem o numero total de horas representado pela instancia. Milliseconds Obtem o numero total de milliseconds representado pela instancia. Minutes Obtem o numero total de minutos representado pela instancia. Seconds Obtem o numero total de segundos representado pela instancia. Ticks Obtem o valor da instancia expressa em ticks. TotalDays Obtem o valor da instancia expressa em dias totais e fracionarios. TotalHours Obtem o valor da instancia expressa em horas totais e fracionarias. TotalMilliseconds Obtem o valor da instancia expressa em milisegundos totais e nao inteiros. TotalMinutes Obtem o valor da instancia expressa em minutos totais e nao inteiros. TotalSeconds Obtem o valor da instancia expressa em segundos totais e nao inteiros Metodos Publicos Add Incluir um TimeSpan especifico na instancia. Compare Compara dois valores de TimeSpan e retorna um inteiro que indica seu relacionamento. Duration Retorna o TimeSpan cujo valor e o valor absoluto da instancia. Equals Overloaded. Overridden. Retorna um valor que indica se duas instancias de TimeSpan sao iguais. Subtract Subtrai o valor definido de TimeSpan de sua instancia. ToString Overridden. Retorna uma representacao em string de um valor da instancia.