01 — The Five Books

You will finish these five. Not skim, not “reference” — finish. Every senior C engineer you would want to hire has read at least three of these cover-to-cover. Together they cover: the language (K&R, King, Gustedt), the professional’s mental model (van der Linden), and the modern toolchain reality (Klemens).

The order matters. Do not open Expert C Programming in month one; do not skip Modern C because you “did K&R already.” The sequencing column below is calibrated for a working engineer at 10-15 hours/week.

The Five

#

Book

Author

Year

Pages

Cost (USD)

Time-to-read

Month

Non-negotiable because

1

The C Programming Language, 2nd ed

Kernighan & Ritchie

1988

272

~$40 print, PDFs circulate

25-35 h

M1 (skim) + M13 (deep re-read)

The prose economy is the pedagogy. You must be able to read K&R fluently — every serious C repo assumes you have.

2

C Programming: A Modern Approach, 2nd ed

K.N. King

2008

832

~$95 print / ~$70 used

80-120 h

M2-M3

The best modern textbook for a returning learner. Exercises are the actual value; do them. Covers C89+C99, still the r/C_Programming default recommendation in 2026.

3

Modern C, 2nd ed (C17) or 3rd ed (C23)

Jens Gustedt

2nd ed 2019 (free PDF) / 3rd ed 2024 (Manning)

~408

Free PDF (2nd) / $40 (3rd)

40-60 h

M3-M4

Gustedt is on WG14. This is C the way the standard body writes it. Free HAL PDF of the 2nd ed is still the recommended entry: https://inria.hal.science/hal-02383654v2/file/modernC.pdf. Upgrade to Manning 3rd ed only if you want C23 coverage.

4

Expert C Programming: Deep C Secrets

Peter van der Linden

1994

384

~$30 print / used $10

20-25 h

M6

The declarations chapter and “the ten most common mistakes” chapter alone justify the purchase. Sun/SPARC anecdotes are dated; the insight into how C thinks is not.

5

21st Century C, 2nd ed

Ben Klemens

2014 (O’Reilly)

408

~$40 print / $30 ebook

20-30 h

M5

The bridge book: gdb, valgrind, autotools, make, gsl, sqlite — how to ship C, not just write toy programs. Nothing else covers the tooling story this cleanly.

Why not other “canonical” books

  • The C Book (Banahan et al., 1991) — free, thorough, but the pedagogy is dry vs. King. Use as reference if you own it.

  • C Primer Plus (Prata) — verbose, spoon-feeds. King wins on every axis.

  • Head First C — cute for absolute beginners; you are past that.

  • C Traps and Pitfalls (Koenig, 1989) — 160 pages, still gold, but Expert C Programming folds most of its lessons in. Read the free PDF (search: “andrew koenig c traps pitfalls pdf”) if curious; not required.

  • Advanced Programming in the UNIX Environment (Stevens/Rago, 3rd ed 2013) — this is a systems book, not a C book. It goes into your systems phase (M7+) as reference, not read-through.

  • The Linux Programming Interface (Kerrisk, 2010) — 1552 pages. Reference-grade. Do not read cover-to-cover; look things up.

What most people get wrong about this list

They start with Expert C Programming because it sounds advanced. It is advanced for someone who already writes C daily. Read out of order and you will bounce off. The correct path is: K&R skim → King (do the exercises) → Modern C → 21st Century C → Expert C Programming. K&R again at M13 as a victory lap; it will feel like a different book.

Return to README.md · Next: 02_free_online_books_and_guides.md