The difference of two hours in sunrise in Arunachal Pradesh and Gujarat is due to their locations.

India is a vast country. Many different local times are possible. For example, the local time of Arunachal Pradesh is two hours ahead of the local time of Gujarat.

However, to prevent confusion and chaos, we have our own national time, the Indian Standard Time (IST). It is calculated from the local time near Allahabad at 72.5° E Longitude. Thus, entire India follows IST and hence all watches show the same time. Moreover, IST is 5 hours and 30 minutes ahead of the Coordinated Universal Time (UTC) which is calculated from Greenwich Mean Time (GMT) located at Greenwich, UK. Thus IST is +05:30 UTC  or +05:30 GMT

However, some countries also keep more than 1 national time zone. For example, USA has 3 time zones.
1. The sun rises first in the Arunachal Pradesh and rises last in the Gujarat state. 
2. It happens because of the longitudinal extent of 30° between eastern and western extremes of india.
3. It causes the difference of 2 hours time in the sunrise in 2 place. 
4. To remove this difference in timings of different areas of our country, time is decided on a central meridian it is the 80° 30' east. 
this is called standard meridian 
IST ( Indian standard time ) followed in whole india.