Возможно не много не правильно, написал что первое в голову пришло, но вообщем как-то так:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var i: integer; s: string;
k: integer;
begin
randomize;
for i:=0 to l.Count-1 do begin
k:=random(l.Count);
if(k <> i) then begin
s:=l.Items.Strings[k];
l.Items.Strings[k] := l.Items.Strings[i];
l.Items.Strings[i] := s;
end;
end;
end;
l - это сам TListBox, в котором уже записано все что надо

ЗЫ если что не понятно, напиши - объясню...