A way to send direct to printer, but, you have to install Acrobat Reader (or similar) on your computer.
Example :
Configure the first 4 lines using local settings of your computer
string NomedaImpressora = "Microsoft XPS Document Writer";
string CaminhoeNomedoArquivo = @"C:\Temp\Exemplo.pdf";
string CaminhoDoAcrobat = @"C:\Adobe\Acrobat 11.0\Acrobat\Acrobat.exe";
string DiretorioTemp = @"c:\Temp\Pdf";
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = CaminhoDoAcrobat;
startInfo.Arguments = string.Format("/t \"{0}\" \"{1}\"",
CaminhoeNomedoArquivo,
NomedaImpressora);
startInfo.CreateNoWindow = true;
startInfo.ErrorDialog = false;
startInfo.UseShellExecute = false;
startInfo.WorkingDirectory = DiretorioTemp;
Process process = Process.Start(startInfo);
process.WaitForInputIdle();
process.CloseMainWindow();
process.Close();
process.Dispose();
The process works satisfactorily by tests performed.
Reference: #