Вы можете использовать класс System.ServiceProcess.ServiceController для поиска службы, которую хотите удалить. Следующий код предоставит вам набор сервисов, установленных на машине (свойство ServiceName - это то, что вы будете использовать для указания услуги):
ServiceController.GetServices(string machineName);
Чтобы удалить службу, вы можете вызвать команду sc например:
ProcessStartInfo psi = new ProcessStartInfo("sc");
psi.Arguments = string.Format("{0} delete \"{1}\"", machineName, serviceName).Trim();
psi.RedirectStandardOutput = true;
psi.UseShellExecute = false;
var process = Process.Start(psi);
process.WaitForExit(timeoutMilliseconds);
var output = process.StandardOutput.ReadToEnd();
if (process.ExitCode != 0)
{
throw new Exception(string.Format("Service delete for Windows Service {0} failed.", serviceName));
}
Вышеприведенный код попытается удалить службу и выбросить исключение, если он не сможет сделать это после timeoutMilliseconds.