How to take website screenshots with C# (.NET)
The article examines how you can take screenshots of any URL with C# (.NET) by using PuppeteerSharp, or screenshot API as a service.
- Written by
- Dmytro Krasun
- Published on
- •
- 3 min read
Capture pixel-perfect website screenshots in C# with a simple API call. No browser management, no Selenium setup—just clean, reliable screenshots.
Looks great
Remove annoying banners easily. ScreenshotOne can block complex GDPR and cookie consent forms. Most cases are covered.
last 30 days
3.5M+
Screenshots rendered
Renders the growing screenshot number every day. The API is performant and proven to handle scale.
Customize everything
Our screenshot API supports a large variety of options for customizing website screenshot rendering. No need to write custom code and logic anymore.
Pixel-perfect quality
Your customers will be pleasantly surprised by the quality of screenshots.
Integrate today
Use our official C# (.NET) SDK or send simple HTTP requests to capture screenshots.
// Add the library via nuget using the package manager console: PM> Install-Package ScreenshotOne.dotnetsdk// Or from the .NET CLI as: dotnet add package ScreenshotOne.dotnetsdk
// And generate a screenshot URL without executing request:var client = new Client("<access key>", "<secret key>");var options = TakeOptions.Url("https://www.amazon.com") .FullPage(true) .Format(Format.PNG) .BlockCookieBanners(true);
var url = client.GenerateTakeUrl(options);// url = https://api.screenshotone.com/take?url=https%3A%2F%2Fwww.amazon.com&full_page=true&format=png&block_cookie_banners=true&access_key=_OzqMIjpCw-ARQ&signature=8a08e62d13a5c3490fda0734b6707791d3decc9ab9ba41e8cc045288a39db502
// Or take a screenshot and save the image in the file:var client = new Client("<access key>", "<secret key>");var options = TakeOptions.Url("https://www.google.com") .FullPage(true) .Format(Format.PNG) .BlockCookieBanners(true);
var bytes = await client.Take(options);
File.WriteAllBytes(@"c:\temp\example.png", bytes);
ScreenshotOne is the best product on the market - and that's before you take into account how responsive and easy Dmytro is to work with.
Any time we've found a rare edge case, it's been resolved in hours.
Great company, great founder - can't say enough!
Read
Practical guides and real updates based on our experience operating rendering infrastructure at production scale.
The article examines how you can take screenshots of any URL with C# (.NET) by using PuppeteerSharp, or screenshot API as a service.
How Kinsta uses ScreenshotOne to deliver reliable automatic updates.
Typeshare is a digital writing platform designed to enhance the writing experience by offering a suite of tools aimed at reducing common barriers writers face.
Exhaustive documentation, ready SDKs, no-code tools, and other automation to help you render website screenshots and outsource all the boring work related to that to us.