Here you will learn everything about shaders in Unity. But what's a shader? According to Wikipedia:
"In the field of computer graphics, a shader is a computer program that is used to do shading: the production of appropriate levels of light, darkness, and color within an image, or, in the modern era, also to produce special effects or do video post-processing. A definition in layperson's terms might be "a program that tells a computer how to draw something in a specific and unique way."
Shaders tend to be a bottom-less pit of learning, but here you will learn the following advanced shader techniques:
The focus here is on advanced shaders, so it requires that you already know the basics of shader programming. If you don't, I think that these resources were good: