Hola,
Yo he realizado muchas aplicaciones sobre este tema.
Sin duda la mejor librería quepuedes encontrar es la
iTextSharp, que es la versión C# de las iText (java).
- Pros: Están por encima de otras librerías de pago, y se actualiza muy a menudo.
- Contras: Aunque actulamente hay muchos ejemplos en Internet de su uso, sin lugar a dudas, su prima hermana iText, está mucho mejor documentada, pero esta misma documentación nos es muy útil, ya que ambas contienen prácticamente los mismos métodos y propiedades.
Salu2