I have encountered a very strange idea today. My prof claimed that the differential of a function $df$ is the number of level curve crossed by a tangent vector $v$ at a point $p$
I tried to reason this out by setting up a 1D function and counting the number of level curves crossed by tangent vector, but what would be the level set for a 1D function?
Given a function $t\mapsto f(t)$ of one real variable its level sets consist of individual points on the $t$-axis: Given a value $C$ the set $\{t\in{\rm dom}(f)\>|\>f(t)=C\}$ is generically a discrete set of points.
The idea of "number of level curves crossed" is somewhat old-fashioned. But it is easiest to grasp in a multidimensional setting. Assume that we have a function $f: \>{\mathbb R}^2\to{\mathbb R}$. In order to visualize this function on a sheet of paper we can draw its level curves for $f$-values spaced by an amount $h\ll1$ specified in advance. On Swiss topographical maps $h$ is $10$ metres. In zones where $|\nabla f(x,y)|$ is small subsequent curves are far apart, and in zones where $f$ changes a lot within a small distance subsequent curves are very near to each other.
Consider now a point ${\bf p}=(p_1,p_2)$, and draw in your figure a vector ${\bf v}$ attached at ${\bf p}$. The tip of ${\bf v}$ is at the point ${\bf p}+{\bf v}$. How many of the drawn level curves does the segment $[{\bf p},{\bf p}+{\bf v}]$ cross? This number $N({\bf p},{\bf v})$ is approximatively given by $${f({\bf p}+{\bf v})-f({\bf p})\over h}\ .$$ The difference appearing in the denumerator is well approximated by $df({\bf p}).{\bf v}$, so that we obtain $$N({\bf p},{\bf v})\doteq{1\over h}\>df({\bf p}).{\bf v}\ ,$$ as claimed by your prof.