I'm increasingly concerned about the roaming charges levied by pan-India mobile phone service providers (Airtel, BSNL, Reliance, Tata, Vodafone, etc.). Why do Indian cellular service operators charge customers to make/receive calls even when roaming on one's own network? If I'm a Bharti Airtel customer whose hometown is Ludhiana, and if I visit Delhi for a few days, and if I continue to stay on the Airtel network while I'm in Delhi, then why should I pay an extra amount to make/receive calls? From an operational point-of-view, my sense tells me that Airtel probably does not incur any extra expenditure on the calls that I make/receive while I'm in Delhi, then why am I made to pay more?
Case in point: There's no concept of roaming in South Africa (at least for nationwide operators such as Vodacom, to the best of my current knowledge). Whether one's in Pretoria or Cape Town or Durban or Nelspruit, one can make/receive calls at the same rate as one would from/in one's hometown (say Jo'burg). Makes complete sense to me.
PS: It's possible that I'm currently unaware of any interconnect/regulatory cost(s) that pan-India cellular service providers incur when they allow a roaming customer to make/receive calls. However, if there are no such costs involved, charging for roaming appears completely unjustified.