A:
Probably the best option would be that you use PDFNet SDK for .NET. As a starting point, download PDFNet SDK for you version of .NET Framework from:
http://www.pdftron.com/pdfnet/downloads.html
After unzipping the archive open 'PDFNet/Samples/PDFPrint' sample ( http://www.pdftron.com/pdfnet/samplecode.html#PDFPrint )
This is a very simple console app that you can tweak to meet all your requirements.
Thanks, that worked. Unfortunately the printer mode methods have not been able to set tray and other settings on our Canon iR-ADV 6075.
Using PDFDraw you have direct access to all .NET Framework APIs related to printing (e.g. PrintDocument, Settings, etc) so you have more control over print process than with StartPrintJob().