Microsoft .NET doesn't yet include a PDF component, so you'll need to use a third-party component, unless you enjoy doing stuff the hard way, and have plenty of time to spare.
Here are a few popular components for the task -
ABCpdf.NET,
iTextsharp,
PDFSharp.
Some of these are free for personal use, but for commercial purposes you may need to purchase a license. It's certainly worth checking the small print before you begin ;-)
Here's a quick example in VB.NET to show how easy PDF generation can be...
Dim theDoc As Doc = New Doc()
theDoc.FontSize = 96
theDoc.AddText("Hello World")
theDoc.Save("simple.pdf")
theDoc.Clear()
The example above uses the ABCpdf component from WebSupergoo.
All these components feature their own native drawing commands, which enable you to draw and construct pages and documents. One of the differences between these components is what other methods of layout and formatting they offer, e.g. HTML & CSS, Drawing2D, WPF, Flash, PostScript. If you already know one of these, and your chosen components support it, this can help you get up to speed and generate more complex layouts sooner.