Para listar o conteúdo da pasta utilize o código abaixo
DirectoryInfo Dir = new DirectoryInfo(@"C:\Users\Admin\Desktop\TESTE");
// Busca automaticamente todos os arquivos em todos os subdiretórios
FileInfo[] Files = Dir.GetFiles("*", SearchOption.AllDirectories);
foreach (FileInfo File in Files)
listBox1.Items.Add(File.FullName);
Para abrir o arquivo ao clicar no nome dele, atribua o código abaixo ao evento de click do listbox.
private void listBox1_Click(object sender, EventArgs e)
{
// Instancia o processo
System.Diagnostics.ProcessStartInfo psiProcesso = new System.Diagnostics.ProcessStartInfo(listBox1.SelectedItem.ToString());
// Abre o arquivo contido no caminho do link
System.Diagnostics.Process.Start(psiProcesso);
}