This example will take a look at a service called DocRaptor. The service isn't free, but consider the cost of writing and maintaining code to provide print functionality in your web application. Consider the cost of buying third-party controls to provide the same functionality. It all comes down to what makes the most sense for you as a developer.
Create a basic web application and go to Tools, NuGet Package Manager, Package Manager Console. Type the following command in the console to install the DocRaptor NuGet package.
Install-Package DocRaptor
Once DocRaptor is installed, you can head on over to their web page (http://docraptor.com/) to read through some of the API documentation or you can also swing by the GitHub page (https://github.com/DocRaptor/docraptor-csharp) for additional information.