Die Frage ist ohne [VM](http://texwelt.de/wissen/fragen/569/was-ist-ein-vollstandiges-minimalbeispiel-oder-kurz-vm-und-wie-erstelle-ich-dieses) etwas zu allgemein gestellt. Grundsätzlich ist eine `longtable` auch nur eine `tabular`. Bezüglich der Spaltentypen gilt also alles, was für `tabular` gilt auch für `longtable`.
Die Spaltentypen `l`, `c` und `r` sind horizontale Boxen (vgl. `\mbox`). Das bedeutet, dass Zeilenumbrüche darin ignoriert werden. Der Spaltentype `p`, ebenso wie die Spaltentypen `m` und `b` des [`array`-Pakets][1] sind hingegen vertikale Boxen (vlg. `\parbox`). Das gilt auch für den Spaltentyp `X` des [`tabularx`-Pakets][2], der letztlich in der Voreinstellung ein `p`-Typ ist. In diesen sind nicht nur automatische, sondern alle Arten von manuellen Umbrüchen möglich. Also sowohl `\linebreak` als auch `\newline`, `\par` und Leerzeilen. Gibt man einen Ausrichtungsbefehl wie `\centering`, `\raggedright` oder `\flushleft` mit an, so wird `\\` außerdem zum Neue-Zeile-Befehl dieser Ausrichtungen. Das kollidiert dann in der letzten Spalte ggf. mit der Bedeutung *Ende der Tabellenzeile*. Dies kann man entweder dadurch lösen, dass man für das Ende der Tabellenzeile die Anweisung `\tabularnewline` verwendet, oder dass man mit `\arraybackslash` die Bedeutung von `\\` wieder dahingehend ändert. Allerdings fehlt einem dann ggf. der Neue-Zeile-Befehl, der keineswegs in allen Fällen mit `\newline` identisch ist.
Benötigt man nur ausnahmsweise einen Umbruch in einer normalen `l`-, `r`- oder `c`-Spalte, so kann man auch einfach eine Tabelle in der Zelle verwenden. Das ist beispielsweise für Tabellenüberschriften ein gangbarer Weg:
\documentclass{article}
\begin{document}
\begin{tabular}{rlr}
\textbf{\begin{tabular}{@{}c@{}}Laufende\\Nummer\end{tabular}} &
\textbf{\begin{tabular}{@{}c@{}}Das\\hier\end{tabular}} &
\textbf{\begin{tabular}{@{}c@{}}Das\\dort\end{tabular}} \\
1 & ja & nein \\
2 & doch & oder \\
6 & geht & so \\
\end{tabular}
\end{document}
Über das optionale Argument von `tabular` kann man dabei auch die vertikale Ausrichtung beeinflussen:
\documentclass{article}
\begin{document}
\begin{tabular}{rlr}
\textbf{\begin{tabular}[b]{@{}c@{}}Laufende\\Nummer\end{tabular}} &
\textbf{\begin{tabular}[t]{@{}c@{}}Das\\hier\end{tabular}} &
\textbf{\begin{tabular}{@{}c@{}}Dort\\da\\dann\end{tabular}} \\
1 & ja & nein \\
2 & doch & oder \\
6 & geht & so \\
\end{tabular}
\end{document}
Alternativ kann man auch eine `varwidth`-Umgebung des [gleichnamigen Pakets][3] oder eine `\parbox` mit fester Breitenangabe an Stelle einer `tabular` in einer solchen Spalte verwenden.
Um [`tabularx`][4] mit [`longtable`][5] kombinieren zu können, benötigt man übrigens zusätzliche Pakete wie [`ltxtable`][6] oder das überlegene [`tabu`][7]. Bei letzterem ist leider unklar, wie die Entwicklung in Zukunft weiter gehen wird. Deshalb empfehle ich eher [`ltablex`](http://www.ctan.org/pkg/ltablex). Dieses Paket hat außerdem den Vorteil, dass es die Anpassung der Breite an die maximal notwendige Breite einer Spalte bietet. Diese Voreinstellung ist aber auch einfach abschaltbar.
[1]: http://www.ctan.org/pkg/array
[2]: http://www.ctan.org/pkg/tabularx
[3]: http://www.ctan.org/pkg/varwidth
[4]: http://www.ctan.org/pkg/array
[5]: http://www.ctan.org/pkg/longtable
[6]: http://www.ctan.org/pkg/ltxtable
[7]: http://www.ctan.org/pkg/tabu