Best Way To Learn Solidity For Beginners

Julien Klepatch

If you want to code Ethereum Dapps, you will need to learn Solidity, the programming language for smart contracts.

Although Solidity looks simple its not and as a beginner its not always easy to find beginner level tutorials. In this article I will show you what is the best way to learn Solidity if you are a beginner, by starting from easy-to-follow tutorials and progressively bringing you to more advanced topics.

Beginner tutorials

As a newbie, you might have questions such as:

  • Which programming language to use for smart contracts?
  • What is the syntax of Solidity?
  • How to declare variables in Solidity?
  • Is Solidity a dynamic compiled language?
  • Where should I start my journey as a Ethereum newbie?

These resources will help you to answer your questions:

  • CryptoZombies – This is the most popular tutorial for Solidity beginners. More than 300,000 students already followed it, and its very fun to do
  • Ethernaut – Game where you need to “hack” smart contracts

I hope that after your first taste of Solidity you are curious to learn more advanced topics. Read on!

Intermediate tutorials

After you cut your teeth on your first smart contracts its time to level up and study some more advanced Solidity topics!

  • What is the equivalent of objects in Solidity?
  • How variables are stored?
  • What are the most important token standards?

These links will provide some answers:

Once you have been through all this reading, you probably feel eager to apply your newfound knowledge to some real-life projects. But before you get there The next step is to study tools that you will need to develop ethereum decentralized applications.


After you feel more comfortable with Solidity, there are still some unanswered questions, such as:

  • Which code editor / developing environment to use for Solidity smart contracts?
  • How to compile Solidity smart contracts?
  • Where to deploy smart contracts during development?

Studying these tools will help you to to answer these questions:

  • Remix – The IDE for Solidity smart contracts
  • Ganache Tutorial series – Ganache is GUI and command-line tool to create a local ethereum blockchain for development
  • Solcjs – The Javascript compiler for Solidity
  • Truffle – most popular dapp framework in Nodejs, supported by Consensys
  • Embark – second most popular Dapp framework in Python, supported by Status
  • Mythril – Security Analysis tool for Solidity smart contracts
  • Ethereum Gas Station – Website to know the current gas price on the network. Useful to not overpay gas fees!

After all this knowledge you are finally ready to fit all the pieces together and develop full feature Ethereum applications, or dapps (for Decentralized Applications). Continue to read below for that!

Full project Tutorials ( Ethereum Dapp Tutorial)

Smart contracts need to be combined to a web or mobile frontend to make them user-friendly. These pose a lot questions:

  • How to integrate smart contracts with a frontend UI?
  • How a web frontend can communicate with a smart contract on Ethereum?
  • Which frontend framework to use for Ethereum dapps?

The below resources will provide some answers:

Once you know how to build Dapps, you can continue your journey by learning about the underlying tech, the Blockchain, cryptography and distributed systems

Blockchain, Cryptography & Distributed Systems

Other resources

If you still don’t have enough resources you can check out these 2 awesome lists on Github:


  1. Astra Rai
    November 4, 2018

    Thank you for providing this guide. It's appreciated.

  2. Daws
    November 20, 2018

    Whew! Tons to start working on. Thank you for being the shaman to so many lost souls.

  3. The Blockchain Blog
    May 12, 2020

    Very good list of resources. Thanks a lot.

Leave a Reply

More great articles

How To Contribute To Open Source Crypto Projects

How To Contribute To Open Source Crypto Projects

Open source contributions are a great way to learn, engage and understand how some of the biggest crypto startups actually…

Read Story

How To Perform Custom Ethereum Flash Loans Using Solidity (ERC 3156 Standard)

What will I learn? Connecting and using an Ethereum testnet What is a flash loan (ERC 3156) Flash loan interfaces…

Read Story

The Ultimate Resource List to Learn Ethereum Dapps & Solidity Smart Contracts

LAST UPDATED IN MARCH 2019 When I first started to learn Ethereum a few years ago, there were almost no…

Read Story

Never miss a minute

Get great content to your inbox every week. No spam.
[contact-form-7 id="6" title="Footer CTA Subscribe Form"]