Das folgende ist im wesentlichen eine Zusammenfassung der anderen Antworten, die ich aber für sinnvoll halte:
Da bei einer longtable das Vortäuschen einer `minipage` mit `\@minipagetrue` die Leerzeile vor einer Aufzählung nicht in jedem Fall verhindert, ist es besser, wie von @Stefan vorgeschlagen, eine echte `minipage` in die Spaltendefinition einzubauen:
\newcolumntype{P}[1]{%
>{\begin{minipage}[t]{#1}\raggedright\arraybackslash}p{#1}<{\end{minipage}}}
Warum eine `minipage` dafür sinnvoll ist, findet man u.a. in den Antworten auf die Frage [Wann sollte ich minipage statt parbox verwenden?][1]
Dann gibt es (mindestens) zwei Möglichkeiten eine kompakte Aufzählung in einer Tabelle unterzubringen.
(1) Mit dem Paket `enumitem` und einer für diesen Zweck definierten Aufzählung `titemize`
\usepackage{enumitem}
\newlist{titemize}{itemize}{4}% neue Listenumgebung für Tabellen
\setlist[titemize]{nosep, label=\textbullet, leftmargin=*, after=\strut}
(2) Mit dem Paket `paralist` und einer neu definierten Umgebung `mycompactitem` (siehe Antworrt Antwort von @Bettina)
\usepackage[alwaysadjust]{paralist}
\setdefaultitem{\textbullet}{\textbullet}{\textbullet}{\textbullet}
\newenvironment{mycompactitem}{\begin{compactitem}}{\strut\end{compactitem}}
Das`\strut` sorgt in beiden Fällen dafür, dass die letzte Aufzählungszeile die richtige Tiefe hat. Nähere Informationen dazu findet man u.a. in der Antwort auf die Frage [Was macht der Befehl \strut?][2]
Beide Lösungen funktionieren sowohl für `tabular` als auch `longtable` Tabellen, wobei das Paket `enumitem` an sich sehr viel mehr Einstellungsmöglichkeiten bietet.
![alt text][3]
[1]: http://texwelt.de/wissen/fragen/503/wann-sollte-ich-minipage-statt-parbox-verwenden/508
[2]: http://texwelt.de/wissen/fragen/1315/was-macht-der-befehl-strut/1316
[3]: http://texwelt.de/wissen/upfiles/AufzaehlungInTabelle.PNG