Some people learn better with books. If your son is one of those, and they don’t have much programming experience, I’d recommend the Harrison Ferone Learning C# by developing games with Unity.
If your son has programming experience, I’d maybe recommend a Unity certification exam guide. Certification exams are a good challenge that make sure students have a well rounded understanding of unity. I helped a high school student pass the test last year, though they were not a beginner programmer.
There are a plethora of books on the topic. Ex: https://www.amazon.com/Learning-Developing-Games-Unity-2021/dp/1801813949/
If you're new to programming, and would rather use a book, I can recommend Learning C# by Developing Games with Unity .