Aparentemente estes dois componentes do ASP.Net apenas exibem dados na tela, mas a forma como trabalham internamente é diferente. Vamos entender suas diferenças.
O componente Label é mais indicado para rotular outros controles na sua página ASPX, pois além de exibir textos ele pode receber, de maneira direta, estilos em CSS, através do complemento CssClass.
O componente Literal apenas reserva um local em sua página para a exibição de textos, no entanto ele não pode receber estilos CSS de maneira direta, ou seja, você não pode inserir o parâmetro CssClass em sua tag.
A forma como eles são renderizados no navegador também difere. Vejam este código ASPX abaixo:
<asp:Label ID="Label1" runat="server" Text="Texto do seu Label"></asp:Label>
<asp:Literal ID="Literal1" runat="server" Text="Texto do seu Literal"></asp:Literal>
No navegador isso será renderizado da seguinte forma:
<span id="Label1">Texto do seu Label</span>
Texto do seu Literal
Notem que o componente Label gerou a tag <span> automaticamente, enquanto o Literal apenas escreveu o texto na tela, sem qualquer outra interferência.
Outras dicas de Asp.NET
Acessando ou modificando o label de uma Master Page
Adicionando itens a um Dropdownlist
Adicionando um atributo css dinamicamente
Alterando a cor padrão de um componente de texto (Textbox)
Alterando dinamicamente a cor do texto de um botão
Alterando o título da Master Page
Alterando o título de uma página filha
Associando uma classe CSS a um componente dinamicamente
Atualizando a página em tempo programado
Como chamar função C# a partir de Javascript
Convertendo DataSet em DataTable
Convertendo DataTable em DataSet
Criando e lendo Cookies
Criando um DataTable através de código C#
Criando, lendo e destruindo variáveis de sessão
Definindo um valor padrão em um Dropdownlist
Desabilitando o POST do Enter
Desabilitando o Postback de um botão
Diferença entre Session.RemoveAll, Session.Clear e Session.Abandon
Diferenças entre Label e Literal
Especificando Maxlength em campos multiline
Exceções mais comuns
Image Button passando valor para função C#
Impedindo a persistência de dados em DataTable através do comando Clear()
Impedindo dois cliques em um botão
Javascript capturando elementos na ContentPage
Lista de cores do método System.Drawing.Color
Ocultando coluna do DataGridView
Ocultando DIV na Master Page
Ocultando um elemento na Master Page
Percorrendo as linhas de um DataTable
Percorrendo um RadioButtonList
Retornando o dia da semana
Solicitando confirmação antes de um postback
Validando Radiobutton com Javascript
Validando tipos de arquivos para FileUpload
Validando um DropDownList através de Javascript
Verificando a existência de um Cookie
Verificando a existência de uma coluna em um DataSet
Você Sabia?
Duck Hunt
Ao completar o nível 99 do jogo Duck Hunt, para Nintendo, o jogo retorna ao primeiro nível, mas um bug impede que se acerte os patos neste recomeço. Este é um exemplo do que é chamado no mundo dos games de "Kill Screen".
Máquina de Pascal
A Máquina de Pascal, criada em 1642 pelo filósofo, físico e matemático francês Blaise Pascal, é reconhecida como o primeiro computador do mundo e ele foi criado com o objetivo de calcular impostos. Saiba mais.
Muitos aplicativos
Instalar vários aplicativos com o mesmo propósito, como editores de texto, reprodutores de músicas ou vídeos e até programas antívirus sobrecarregam o seu sistema operacional e ainda ocupam espaço desnecessário em seu HD. Tenha apenas um bom programa para cada função.
Mouse
O mouse foi criado em 9 de dezembro de 1968, por um americano chamado Douglas Engelbart, que o batizou de "XY Position Indicator for a Display System". Conheça a história do mouse clicando aqui.
Final Fantasy
O famoso título Final Fantasy, da Square Enix, tem este nome exatamente porque se tratava da última esperança da empresa, que estava à beira da falência quando o lançou. Clique aqui e conheça detalhes dessa história.