Steamworks.NET or Facepunch.Steamworks for Unity?
2 min read
By Eduardo Orellana ·
Both are free, open-source C# wrappers for Valve's Steamworks API. Steamworks.NET maps the C++ API almost one to one, so Valve's documentation and examples translate directly, at the cost of verbose callback code. Facepunch.Steamworks, from the studio behind Rust, wraps it in an idiomatic C# API with properties, events and async methods, so common tasks take fewer lines but you follow its docs rather than Valve's. Pick Steamworks.NET for full coverage and Valve-documented behaviour, Facepunch for speed of writing.
The choice is about whose documentation you want to read
Both libraries call the same Steam API underneath. What differs is the shape of the C# you write: Valve's, translated literally, or Facepunch's own, designed for C# developers. That decides how easy it is to follow Valve's docs, and how much code an achievement or a lobby takes.
Steamworks.NET
- A near one-to-one C# mirror of the C++ Steamworks API.
- Valve's documentation and samples apply almost directly.
- Callbacks through Callback<T> and CallResult<T>; more boilerplate.
- Broad API coverage, tracking new SDK versions.
- Common in Unity via a package and a SteamManager script.
Facepunch.Steamworks
- An idiomatic C# API: SteamClient.Init(appId), SteamUserStats, SteamMatchmaking, with properties and events.
- Async methods for calls that wait on Steam.
- Less code for common tasks; its own documentation.
- Built and used by Facepunch Studios.
How to choose
- Need a less common Steam feature, or want Valve's docs to apply line by line: Steamworks.NET.
- Want achievements, lobbies and cloud in the fewest lines: Facepunch.Steamworks.
- Either way, initialize once at startup, run callbacks every frame, and test with Steam running.
Where Flockbay fits
Flockbay builds games on Godot, where GodotSteam plays this role. Its publishing tools work for a Unity game too: the Steam page as a .zip, trailers from your gameplay, posts, ads on your own accounts. Free in beta until 1 December 2026.
Keep reading
- The indie game publishing guide
- Put a Unity game on Steam
- Steam achievements in Unity
- Steam game maker
- GodotSteam: setting up Steamworks in a Godot 4 game
- How to put a Construct 3 game on Steam
- How to put a GameMaker game on Steam
- How to put an RPG Maker game on Steam
- Port a Godot game to Steam, Steam Deck included
Flockbay builds games for free on Godot, and its publishing tools work for any engine's game.
Download Flockbay free