I am an engineering student and I need to acquire a good understanding of some notions in differential geometry such as manifolds, diffeomorphisms, distributions, etc. I can't find a proper starting path. How should I start to learn the subject from basics?

I need the material to study geometric nonlinear control theory. Any further suggestions are appreciated.