Best resources to learn Solidity

Solidity is a programming language designed for developing smart contracts that run on Ethereum. It's the most in demand skill in the Web3 space. These are the best resources to help you learn more about it.

What is a smart contract?

Smart contracts are the backbone of decentralized applications (DApps) and Web3. A smart contract is a simple program that lives on a blockchain network (such as Ethereum). They're actually not that smart. And nothing like a (legal) contract. They’re more like an executable piece of code that requires input or an trigger from an external source. They can validate those input conditions and if correct, execute their own logic to update the state on a blockchain.


They often serve the following purposes:

  • Store and maintain data
  • Manage relationships with users, or other contracts

Benefits of smart contracts are

  • Immutable - once deployed none can change them
  • Composable - they’re public and anyone can interact with them, or build on top of them. Much like public APIs


The following resources have been the most popular resources on the site for a long time. These are all highly recommend to start learning about Solidity

1. Official Solidity website

The most obvious resources is ofcourse the official website and documentation of the Solidity team itself. The Solidity team covers all the core concepts and fundamentals of Solidity and smart contracts in general. Highly recommended

2. Solidity by Example

The second one on the list is Solidity by Example. A great collection of more practical examples, incl. source code and supporting videos.

3. CryptoZombies

CryptoZombies is an interactive school that teaches you all things technical about blockchains. A fun and interactive way to write smart contracts in Solidity by making your own crypto-collectibles game.

4. Speedrun Ethereum

Speedrun Ethereum helps you get to the next level. It teaches you how to build on Ethereum; the superpowers and the gotchas while you build up your Web3 portfolio. If you like this, also make sure to check out the other work of the amazing Austin Griffith such as ETH-build and Scaffold-eth.

5. Smart Contract Best Practices

Smart contracts are complex instruments that have the authority to allocate high-value resources between complex systems. Often working autonomously. With huge financial loss at risk. This makes them critical components in these systems. Development of such components requires thoughtful design, solid engineering practices, rigorous testing and a strong security mindset. This document provides a baseline knowledge of security considerations.

Other resources

If you'd like to read more, make sure to checkout all the other Solidity resources on the site.