Why, when and where is Gauss's law applicable? 
Why is it said that Gauss's Law is mainly applicable for symmetric
  surfaces/bodies? Why not for asymmetric surfaces?

I want a logical explanation!
BTW my teacher said that Gauss's law is applicable for any surface/body but in the case where symmetry does not exist, the calculation becomes a bit tedious. I did not get what he meant by that. Can someone please help me get a clear cut concept about when and where Gauss's law can be applied? Please note I'm not asking for the rigorous proof of Gauss's law.
 A: The answer to your question involves the fact that one does not usually know a priori the electric field $\textbf{E}$ (or, for that matter, its direction) of a charge distribution $\rho$.
Gauss's law, in integral form, relates the flux of the electric field through some closed surface $S$ to the charge enclosed within the volume bounded by $S$. Precisely, it is the statement that given an electric field $\textbf{E}(\textbf{r})$ defined over space, the flux integral over any closed surface $S$ will always yield
$$ \oint_S \textbf{E} \cdot d\textbf{a} = \frac{Q_\text{enc}}{\epsilon_0}.$$
Normally surface integrals over vector fields involve parametrizing the surface (i.e. describing a two-dimensional surface by two parameters $u,v$ related to the Euclidean coordinates $x,y,z$). Even then, one has to additionally compute the product
$$\textbf{E} \cdot d\textbf{a} = \textbf{E} \cdot \hat{n}da,$$
where $\hat{n}$ is the unit normal to the surface and can be calculated from the parametrization. This quantity can assume different values everywhere along the surface.
So far I've only talked about the difficulties in computing the flux integral of a vector field over a general surface. When using Gauss's law, we have the added problem of not knowing the electric field (this is the quantity we're trying to find!). We now are tasked with computing an integral over an undefined function! This is where symmetry comes in and saves the troubled physicist.
Essentially, symmetric charge distributions allow one to choose a convenient surface (which preserves the symmetry) to remove $\textbf{E}$ from the integral. For example, consider a uniformly charged spherical volume of radius $R$ (i.e. a ball). Due to symmetry, one can argue that the electric field generated from this distribution must be radially symmetric. If we take our surface $S$ to be a sphere of radius $r$, then we find that the normal to the sphere and the direction of the electric field coincide, so
$$\textbf{E} \cdot d\textbf{a} = |\textbf{E}|\oint_S da = 4 \pi r^2 |\textbf{E}|,$$
since we are now simply computing the surface area of a sphere. We can now simply divide to find the answer:
$$ |\textbf{E}| = \frac{1}{4 \pi \epsilon_0} \frac{Q_\text{enc}}{r^2}.$$
To summarize, Gauss's (integral) law relates the flux integral of the electric field to the charge contained within a surface. Because we do not know the electric field, Gauss's law is only useful when we can remove the electric field from within the integral, which happens when the charge distribution displays certain spatial symmetries (spherical, cylindrical, planar). 
A: 
Why is it said that Gauss's Law is mainly applicable for symmetric surfaces/bodies? Why not for asymmetric surfaces?

Nobody says that. Gauß law holds whenever its hypotheses hold. In particular it has nothing to do with the shape of the bodies at hand, rather it is a mathematical theorem relating the flow of a vector field through a surface to the behaviour of the same vector field within the surface, as you can find here, for example. Essentially the conditions that you have to check are the smoothness of the vector field (up to some orders) and the behaviour of such field at infinity, but other than that it is a quite general result. 
Together with the curl theorem it completes the assertion that a vector field can be uniquely determined if its divergence and its curl is know at any point of its domain of definition (and that is why Maxwell's equations are written in terms of curls and divergences).
When it comes to the explicit calculations, in particular for its integral form, the results simplify a lot if you are dealing with symmetric surfaces for the only reason that most of the contributions in different directions cancel out of the integral and you end up with simple functions to integrate in one dimension. But this is just something concerning the integrations of the functions: if you were able enough to calculate surface integrals for general domains then all the shapes would be equally good for you.
A: As your teacher says, it holds for every surface, but a look at the law itself, should clear out why some form of symmetrie is desirable:
$$
\iint_S \vec{E} .\mathrm{d}\vec{A}=\iint_S E . \cos\theta . \mathrm{d}A = \frac{Q}{\epsilon_0}
$$
Here, $E$ and $\theta$ are position-dependent, so to calculate the integral, you need to take care of a position dependent magnitude and a position dependent angle of the electric field, not an easy task if your aim is to find the electric field.
How much easier if you can use some reasoning before starting the calculation. E.g. for the field of a point charge, you can take a sphere with the charge in the center as surface, just for convenience. Since for symmetrie reasons, the field should be the same for every point on the sphere and the direction of the field should be perpendicular on the surface, it becomes much easier:
$$
\iint_S \vec{E} .\mathrm{d}\vec{A}=\iint_S E . \cos\theta . \mathrm{d}A = E\iint_S  1 . \mathrm{d}A =\frac{Q}{\epsilon_0}
$$
A: As an example, let us suppose that you want to use the Gauss law to evaluate the electric field generated by a body charged in an uniform way. The gauss law tell you that the flux over an arbitrary closed surface around your body is proportional to the total charge:
$$\int_{\partial V} \vec{E}\cdot d\vec{S}=\frac{Q}{\epsilon_0} $$
but this is an information about a peculiar integral of the field, and it is not easy to deduce the field at a given point without additional information.
Now, if the body is spherically symmetric you know in advance that the electric field must have the same symmetry. This means that $\vec{E}$ must be of the form
$$\vec{E}(\vec{r})= f(|\vec{r}|) \vec{r}$$
that is, $\vec{E}$ must be directed in the radial direction (I am supposing that the spherical body is centered on the origin) and its modulus must depend only on the distance from the center. Here $f(x)$ is some unknown function. By substituting this expression inside the integral expression of the Gauss law you get
$$\int_{\partial V} f(|\vec{r}|) \vec{r}\cdot d\vec{S}=\frac{Q}{\epsilon_0} $$
By choosing a spherical surface of radius $|\vec{r}|$, we get a constant integrand and
$$4\pi  f(|\vec{r}|)|\vec{r}|^3 =\frac{Q}{\epsilon_0} $$ 
which means
$$f(|\vec{r}|) =\frac{Q}{4\pi \epsilon_0|\vec{r}|^3} $$ 
and
$$\vec{E}(|\vec{r}|) =\frac{Q}{4\pi \epsilon_0} \frac{\vec{r}}{|\vec{r}|^3}$$ 
which is the expected well known result. Note that the choosen surface is an equipotental one.
If the body is not spherically symmetric neither the field will be. In order to make the integrand constant as in the previous example you need to find a closed surface which satisfy two different conditions


*

*It must be perpendicular to the field everywhere 

*The modulus of the field on it must be constant


You can satisfy the first condition by choosing an equipotential surface, but without additional information (symmetry) you need to solve your problem first!
In any case, a surface which satisfy both conditions does not exist in general.
