Есть некоторые процессы, к которым у вас нет доступа даже от имени администратора.Вы можете перехватить исключение и продолжать:
foreach (Process proc in processlist)
{
try
{
Console.WriteLine(proc.MainModule.FileName);
}
catch (Win32Exception e)
{
Console.WriteLine(proc.ToString() + " " + e.Message);
}
}