Why any non polar compounds dissolve in nonpolar substance like Benzene what is the reason behind it?
The simple answer is entropy. The explanation not so much.  If you consider solvation (a specific type of dissolving) to really be a melting process you can consider the resulting solution a eutectic/peritectic mixture. 

To explain Figure 1 is the phase diagram of tin-lead compounds.  You could consider tin to be soluble in lead since at $300^\circ C$ lead is liquid and tin is solid but when tin is added to lead, it dissolves.  Or you could consider the mixture of the two to be a eutectic that lowers the finally melting temperature of both substances to $183^\circ C$ (at 61.9 wt% lead) which is commonly the case.  In fact if you were to make a phase diagram for any solute and solvent you would see similar behaviour.  

Now sometimes the solvent forms a solid complex such as $\ce{CaCl2 *6H2O}$ which casuses a discontinuity. in Figure 2, point A is a eutectic point but points B and C are peritectic which is a result of the solid phase having a different equillibrium complex ($\ce{CaCl2*6H2O}$ vs. $\ce{CaCl2*4H2O}$.

That was some concept now for some math.  The entropy of mixing can be determined for a solution by: $\Delta S_{mix} = -R[x_a ln(x_a) + x_b ln(x_b)] $ where $x_a$ and $x_b$ are the molar ratios of the components  ($x_a = 1 - x_b$). Since $\Delta S_{mix}$ is always positive, $\Delta G_{mix}$ will always be negative as long as the heat of mixing ($\Delta H_{mix}$) is not too positive.

Figure 1: Eutectic Mixture Example:




Figure 2: Peritectic Example: