The Rust Programming Language, 3rd Edition

The Rust Programming Language, 3rd Edition

by Steve Klabnik, Carol Nichols, and Chris Krycho, with contributions from the Rust Community
February 2026, 624 pp.
ISBN-13: 
9781718504448
Use coupon code PREORDER to get 25% off!

The Rust Programming Language, 3rd Edition, teaches you to write code that the compiler can verify, teams can maintain, and systems can evolve safely over time. Written by longtime Rust community members, this book shows you how to work effectively with Rust’s type system, concurrency model, and tooling, using patterns and idioms chosen for long-term stability.

Learn how to:

  • Design programs that communicate their invariants to the compiler
  • Use ownership, lifetimes, and traits to model real-world constraints
  • Write concurrent and multithreaded code with confidence and clarity
  • Build, test, document, and refactor projects using Cargo effectively
  • Handle errors explicitly and idiomatically
  • Apply expressive pattern matching to simplify complex logic

Three substantial project chapters—focusing on a number-guessing game, a command-line tool, and a multithreaded server—demonstrate how these concepts work together in complete, real programs.

Whether you’re new to Rust or already using it in production, this book helps you write code that scales safely and makes its guarantees explicit.

New to this edition: 
Complete async programming chapter
Miri for analyzing unsafe code
Built on the Rust 2024 Edition
Modern Rust idioms, tooling, and practices

Author Bio 

Steve Klabnik was the lead for the Rust documentation team and one of Rust’s core developers. A frequent speaker and a prolific open source contributor, he previously worked on projects such as Ruby and Ruby on Rails. 

Carol Nichols is a member of the Rust Crates.io Team and former member of the Rust Core Team. She’s a co-founder of Integer 32, LLC, the world’s first Rust-focused software consultancy. She has also organized the Rust Belt Rust Conference.

Chris Krycho is a software engineering leader with experience in avionics, developer tools, web frameworks, and more. In addition to his open source software contributions and regular public speaking, he created the New Rustacean podcast (2015–2019).

Table of contents 

Foreword
Preface
Acknowledgments
Introduction

Chapter 1: Getting Started
Chapter 2: Programming a Guessing Game
Chapter 3: Common Programming Concepts
Chapter 4: Understanding Ownership
Chapter 5: Using Structs to Structure Related Data
Chapter 6: Enums and Pattern Matching
Chapter 7: Packages, Crates, and Modules
Chapter 8: Common Collections
Chapter 9: Error Handling
Chapter 10: Generic Types, Traits, and Lifetimes
Chapter 11: Writing Automated Tests
Chapter 12: An I/O Project: Building a Command Line Program
Chapter 13: Functional Language Features: Iterators and Closures
Chapter 14: More About Cargo and Crates.io
Chapter 15: Smart Pointers
Chapter 16: Fearless Concurrency
Chapter 17: Fundamentals of Asynchronous Programming
Chapter 18: Object-Oriented Programming Features
Chapter 19: Patterns and Matching
Chapter 20: Advanced Features
Chapter 21: Final Project: Building a Multithreaded Web Server

Appendix A: Keywords
Appendix B: Operators and Symbols
Appendix C: Derivable Traits
Appendix D: Useful Development Tools
Appendix E: Editions

Index

The chapters in red are included in this Early Access PDF.