How can length be a vector? Length and current both are not vectors. Then how can we assign the vector $l$ to the length of a wire carrying current while calculating for a current carrying conductor in a magnetic field. Also why in Biot—Savart law do we take small length element $dl$ as a vector?
Why is length sometimes a vector, sometimes not, whereas current always is a scalar?
 A: Length, or distance, is not a vector. The vector quantity is displacement.
In integrals such as that in the Biot-Savart law, $$\mathbf B = \int_C \frac{I \, d \mathbf l \times \mathbf r'}{|\mathbf r '|^3}, $$
the integral is over a curve $C$, and $d\mathbf l $ represents an infinitesimal displacement along the curve. More rigorously, it is tangent to the curve, the red line in the figure below, which is the limit of the green line, a secant, as the two points of intersection approach each other. As you can see, it has a direction, so it must be a vector quantity.
 
Further, current $I$ is always a scalar, because the current is defined as the amount of charge flowing through a surface through unit time. Therefore it must be a scalar. However, in electrodynamics it is more customary to deal with the current density $\mathbf j$, which is a vector quantity and encodes both the amount of charge flowing, and its direction. For example, if there are $n$ charge carriers per unit volume (scalar), each with charge $q$ (scalar), and their velocity is $\mathbf v$ (a vector quantity), the current density is $$\mathbf j = qn\mathbf v.$$
The current $I$ though a surface $S$ is found by integrating the flux through it: $$I = \int_S \mathbf j \cdot d\mathbf S$$
which is a scalar, since it contains a scalar product. 
In a thin wire, current can only flow along the wire, so the current density must always be along $d \mathbf l$, and its magnitude is fixed by the total current being $I$, so there is no real need to introduce the concept. However, in two- or three-dimensional conductors, it is necessary to introduce the current density, and then the Biot-Savart law takes the form $$\mathbf B = \int_V \frac{\mathbf j \times \mathbf r'}{|\mathbf r'|^3} \, dV$$
which can be reduced to the first form by taking the current density to be proportional to a suitable Dirac delta.
A: $d\vec \ell$ is not a length.  It is a vector of infinitesimal length (of length $d\ell$) that is in the direction of the current flow.  
Current, on the other hand, is a vector as it flows in specific directions.  It is often not indicated by a vector sign (for historical reasons) because in circuits the current will flow along the wire that carries it.  
Further note that, in the specific case of Biot-Savart, there is a historical issue with the notation.  The notation $Id\vec \ell$ should really be $\vec I\,d\ell$: this would resolve your confusion, but history is history.  Indeed, you can appreciate the notational quirk by comparing the source expressions:
\begin{align}
\vec B\propto\left\{ \begin{array}{ll}
Id\vec \ell \times \frac{\hat r}{r^2}&\hbox{ for linear current distributions}\, ,\\
\vec K\,dS\times \frac{\hat r}{r^2}&\hbox{ for surface current distributions}\, ,\\
\vec J\,dV\times \frac{\hat r}{r^2}&\hbox{ for volume current distributions}\, ,\end{array}\right. 
\end{align}
clearly suggesting that, in order to conform with the surface and volume expressions, the current $I$ should be vectorial but the line element $d\vec \ell$ should be scalar.  
A: While length is not a vector, displacement certainly is. When physicists use $\mathrm{d}\boldsymbol{l}$, they aren't talking about a small bit of area, but a small bit of displacement. In particular, if the closed curve used in the Biot-Savart law is given by a function $\textbf{r}(\lambda)$ where $\textbf{r}$ is the position of a point on the curve and $\lambda$ is some parameter, then we essentially define
$$\mathrm{d}\boldsymbol{l}=\frac{\mathrm{d}\textbf{r}}{\mathrm{d}\lambda}\mathrm{d}\lambda$$
This is just the vector tangent to the curve at a point whose magnitude is the distance covered after a change $\mathrm{d}\lambda$.
This should not be too foreign. If you studied Gauss' law (I assume you have), then you encounter integrals of the form
$$\int_{\Sigma}\textbf{E}\cdot\mathrm{d}\textbf{S}$$
Where $\mathrm{d}\textbf{S}$ is the "vector area." This is just simply a vector perpendicular to $\Sigma$ at a point whose length is equal to the infinitesimal area traced out by changing the parameters of the surface by a small amount.
Now, to your question about current. Current is a vector, since it is defined with respect to the velocity of moving charges. The Biot-Savart law in its standard form says
$$\textbf{B}(\textbf{r})=\int_{C}I(\textbf{r}')\frac{\mathrm{d}\boldsymbol{l}\times\textbf{r}'}{|\textbf{r}'|^3}$$
With $\textbf{r}'=\textbf{r}-\boldsymbol{l}$. The decision to write $I$ as a scalar and $\mathrm{d}\boldsymbol{l}$ as a vector was a historical one, and one could just as accurately write the Biot-Savart law as
$$\textbf{B}(\textbf{r})=\int_{C}\mathrm{d}l\,\frac{\textbf{I}(\textbf{r}')\times\textbf{r}'}{|\textbf{r}'|^3}$$
The reasoning behind choosing $\mathrm{d}\boldsymbol{l}$ essentially lies in the fact that vector line integrals in physics are typically written with vector differentials. However, if you want to treat current as the vector (which is more physically meaningful), you go right ahead.
I hope this helped!
A: Biot-Savart's law is the cross product of two vectors, the current vector and the vector representing the point whose magnetic field you want to calculate. It is easier to understand using the law for a single charged particle.
$$\vec B = \frac{\mu_0}{4\pi}·q·\frac{\vec v \times \vec r}{{\lvert \vec r \rvert}^2}$$
Makes more sense now doesn't it? The problem is that you will not calculate this for single particles but for current flow. That current flow is determined by the number of electrons n times their average speed, hence.
$$\vec B = \frac{\mu_0}{4\pi}·n·q·\frac{\vec v \times \vec r}{{\lvert \vec r \rvert}^2}$$
Not good enough still, you don't know how many single charges there are for a given point in space. However, you do know the current in a given point of the wire. For each dl of the wire, the number of electrons times their speed equals the current times dl times the vector of the wire's direction.
$$I·dl·\vec u_w =I·\vec {dl}= n·q.\vec v$$
$$\vec B = \frac{\mu_0}{4\pi}\frac{I\vec {dl} \times \vec r}{{\lvert \vec r \rvert}^2}$$
So you see, the vector you see (in this example and many others) is merely a unitary vector of the space times the length differential. Length itself is a scalar. This vector is akin to saying that you have to operate with the dl length but taking into account the direction of whatever you are operating with (current in this case).
Hope this has cleared things
A: *

*$\vec l$ is displacement (or position), and $l$ is it's magnitude, called distance or length.


You might hear people call displacement for length, because in the next instant they quickly calculate the length. Sloppy words, that's all.



*

*$I$ is defined as the amount of charge passing through a cross section every second. Just like speed is the distance passed per second. Regardless of direction. That's just a definition.


This definition of $I$ doesn't care about direction, typically because wires are one-dimensional. When direction is needed, people usually use $I/\vec A$, so that the current is seen in comparison to the area it passes through. Since $I$ is defined without direction, the area must be given a direction instead (defined as the normal pointing perpendicularly out from it). This quantity is usually called current density.
This is just definition. When you see current as a vector $\vec I$ anywhere, they are re-defining (making their own slightly tweeked definition) this quantity, which they must/should state clearly. As a matter of fact I asked that same question some time ago, since I agree with your doubt, and you'll find answers in on that post.
