Mit Farbe in LaTeX ist das immer so eine Sache. Generell ist das Setzen einer Box während eine andere Farbe aktiv ist problematisch. Der LaTeX Kern verwendet deshalb am Beginn von Boxen, die bspw. mit `\sbox` gesetzt werden, den Befehl `\color@setgroup` und an deren Ende `\color@endgroup`. Das Selbe könnte auch mit `\comment` verwendet werden, allerdings werden dadurch (aus mir unbekannten Gründen) (mit freundlichem Dank an Ulrike, die `\marginpar`s ein wenig nach unten versetzt. Code Beispiel:
`\leavevmode` hinzugefügt hat)
\documentclass[a4paper,12pt]{article}
\usepackage[ngerman]{babel}
\usepackage{xcolor}
\usepackage{soul}
\makeatletter
\newcommand{\comment}[2]{\marginpar{\color@setgroup\footnotesize \newcommand{\comment}[2]{\marginpar{\leavevmode\color@setgroup\footnotesize \raggedright
#2\color@endgroup}\hl{#1}}
\makeatother
\setlength{\textwidth}{13cm}
\setlength{\oddsidemargin}{0cm}
\setlength{\marginparwidth}{5cm}
\begin{document}
Dies ist ein Text. \comment{Dies ist ein Hinweis.}{Hier schwarz} Dies ist ein text. Noch mehr Text. Noch mehr Text. Noch mehr Text. Noch mehr Text. \comment{Dies ist ein Hinweis.}{Hier gelb} Dies ist ein Hinweis.
Dann haben wir noch den \comment{zweiten Fall}{hier wieder schwarz}, dass ein markierter Text zwar in eine Zeile \comment{passt}{seltsamerweise hier gelb!}, aber in der gleichen Zeile noch ein \comment{weiterer markierter Text erscheint}{weil dieser hier gelb ist...}, in dem ein Zeilenumbruch liegt; dann werden seltsamerweise beide Randnotizen gelb geschrieben.
\end{document}
[![alt text][1]][1]
[1]: https://texwelt.de/upfiles/margincolor.png