Skip to main content

Welcome to Nethereum

Nethereum is the .NET integration platform for Ethereum and EVM-compatible blockchains. Whether you're building a DeFi application, minting NFTs, indexing blockchain data, running your own Ethereum node, or integrating crypto payments into your API — Nethereum provides the tools to do it in C#.

What Can You Build?​

Nethereum includes 134 packages covering the full Ethereum development stack:

  • Smart contract interaction — deploy, call, and listen to events for ERC-20, ERC-721, ERC-1155, ENS, and any custom contract
  • Code generation — generate typed C# services from Solidity ABI
  • Local dev chain — run a Hardhat/Anvil-compatible chain inside your app with instant mining
  • Blockchain engine — pluggable storage, full EVM, RPC routing, Patricia trie
  • AppChains (Preview) — production satellite chains with sequencer, P2P sync, and L1 anchoring
  • Mainnet follower (Preview) — run your own Ethereum node in .NET: sync, validate, and serve mainnet over JSON-RPC
  • Peer-to-peer networking (Preview) — RLPx transport, node discovery, and the block/state sync engine (DevP2P)
  • EVM simulator — execute and debug EVM bytecode with step-by-step tracing
  • Zero-knowledge proofs — Groth16 generation/verification and Circom circuits, plus Zisk zkVM EVM proving (Preview)
  • Blockchain data indexing — crawl and store blocks, transactions, logs, and token transfers
  • Blockchain explorer — Blazor Server explorer with ABI-decoded contract interaction
  • Token services — discover tokens, fetch prices, scan balances across wallets
  • DeFi protocols — Uniswap V2/V3/V4, x402 payments, Gnosis Safe, Permit2
  • Account abstraction — ERC-4337 UserOperations, bundler, ERC-7579 modular smart accounts
  • MUD autonomous worlds — table queries, store indexing, system lifecycle management
  • Multi-platform wallet — MVVM architecture with Blazor and MAUI renderers
  • Unity game integration — coroutine-based RPC, MetaMask WebGL, EIP-6963 wallet discovery
  • .NET Aspire orchestration — full dev environment with one command

For the complete package catalog, see the Component Catalog.

Quick Start​

Install the main package:

dotnet add package Nethereum.Web3

Connect to Ethereum and check a balance:

using Nethereum.Web3;

var web3 = new Web3("https://mainnet.infura.io/v3/YOUR_API_KEY");
var balance = await web3.Eth.GetBalance.SendRequestAsync("0xde0b295669a9fd93d5f28d9ec85e40f4cb697bae");
Console.WriteLine($"Balance: {Web3.Convert.FromWei(balance.Value)} ETH");

Ready to go deeper? Continue to Installation.

Try It in Your Browser​

The Nethereum Playground lets you write and execute C# code against Ethereum directly in your browser — no setup required. It includes dozens of samples covering transfers, contracts, tokens, wallets, and more.

How This Documentation Is Organised​

SectionWhat You'll Find
Getting StartedInstall, create a project, send your first transaction
What Do You Want to Do?over 130 use cases mapped to guides and packages
Architecture MapHow 134 packages are layered and relate to each other
Component CatalogEvery package with descriptions, READMEs, and links

Documentation Sections​

SectionWhat You'll Find
Core FoundationTransactions, blocks, gas, events, ABI encoding, JSON-RPC transport
Signing & Key ManagementPrivate keys, HD wallets, hardware and cloud signers
Smart Contracts & Code GenContract interaction, typed services, code generation, ENS, SIWE
DeFi & ProtocolsUniswap, x402 payments, Gnosis Safe, Optimism, Permit2
EVM SimulatorExecute and debug EVM bytecode with step-by-step tracing
Zero-Knowledge ProofsGroth16 proof generation/verification and Circom circuits — plus Zisk zkVM EVM proving (Preview)
Mainnet Follower (Preview)Run your own Ethereum mainnet node in .NET — sync, validate, and serve mainnet
DevP2P (Preview)Ethereum peer-to-peer networking in .NET — RLPx transport, discovery, and the sync engine
DevChainLocal dev chain — instant mining, Hardhat/Anvil compatibility, Aspire orchestration
AppChains (Preview)Production satellite chains — sequencer, P2P networking, L1 anchoring
Account AbstractionERC-4337 UserOps, bundler, ERC-7579 smart accounts
Data & IndexingBlockchain crawling, storage, explorer, token services
MUD FrameworkAutonomous worlds, table indexing, store queries
Wallet SDKMulti-platform wallet: MVVM ViewModels, Blazor/MAUI renderers, hardware wallets
Wallet ConnectivityIEthereumHostProvider — the universal wallet abstraction for all platforms
Web (Blazor) dApp IntegrationBrowser wallets, EIP-6963, MetaMask, WalletConnect, SIWE authentication
UnityUnity game engine, WebGL wallets, EIP-6963

Community​