By touching neutral why we do not get shock?
The main points to note is that the neutral and ground(earth) wire at homes are at zero potential. But the "live" has a fairly high potential. So when you touch a "live" wire with you being in contact with the earth, (say standing on the floor bare footed) a voltage of 240V/120V (Indian Domestic Voltage/US Domestic Voltage) between live and earth, and a fairly high current from the Distributor is high enough to get you a shock as the incoming current tries to flow from live via you to earth(which is having low impedance as current has a tendency of flowing in through low resistance path).
(Touching a "live" wire and being insulated from earth, say you are standing on the floor with well electrically insulated shoes you wont get a shock because the voltage between live and you becomes zero).

Touching a neutral wire and standing on floor say bare footed, remember the voltage between them is zero(potential diff is zero) because both neutral and earth are at zero potential. So even the current returns through neutral (only from a connected load that completes the current flow circuit) you touching the neutral with a 0V cant get you a shock.

But its not safe to touch neutral wire! 


It is possible that the path to ground on neutral is not very good. When load is connected to the plug point the neutral may not always be at zero potential. Some voltage between earth and neutral(at a high potential) can give you a shock. For instance when I take voltage reading across neutral and earth at my home plug point I get reading between 5-10V. If this becomes high of about 50V or more and you touch neutral you will get a shock. 
It is common that wiring is done incorrectly. It is possible that "live" is wired to neutral and vice versa, many items of electrical equipment will work with live and neutral swapped.