Before arriving in India, we had already taken long-distance trains in South Africa, Myanmar, Vietnam, and Thailand, and shorter trains in many other countries covering a total of 3,347 miles. During our 24 days in India, we took nine long-distance train rides, including five overnight journeys, and covered a total of 2,494 miles. Those 2,494 miles took 89 hours and 29 minutes to complete (though they were scheduled for only 79 hours and 41 minutes!). Including time waiting at stations, we spent four full days of our time in India interacting with the train system and five nights sleeping onboard.
Overall, our train rides in India were fine, and almost certainly were more enjoyable than any other mode of getting around would have been. In total, we had 15 and a half hours of delays across our journeys, though most of that was the nine hour delay of our first trip, which luckily didn’t set a precedent for the rest of them. When we lucked into a private space it felt luxurious, even though the bedding and service is still quite basic compared to some of the other trains we’ve taken. When we shared cabins it was really good that we had quality earplugs and eye masks with us, as there don’t seem to be any social norms about quiet hours, silenced cell phones, or keeping the lights off. Like everything else in India, we did feel we had to be a bit on-guard, mentally, as there was always the chance a food attendant would try to scam us, and we often couldn’t keep our compartment door locked. But nothing truly bad happened, and we got everywhere we were trying to go!
We knew we had to fly into and out of New Delhi to fit into our overall RTW flights itinerary, so decided early to focus on northern India and leave the south for a future visit. After a lot of playing around with maps and train ticketing searches, I put together an itinerary that would go clockwise by train from Delhi, visiting Agra, Varanasi, Bodh Gaya, and Calcutta before flying to Mumbai and continuing by train through Ranakpur, Jodhpur, Jaipur, Ranthambore National Park, and then up north to Amritsar and Shimla before arriving back to New Delhi. Luckily, Amy stepped in and politely pointed out that I’d gotten carried away, and trying to pack so much in would make us pretty miserable.
After more than a little bit of anxiety about what to eliminate, we ended up just copying Seat61’s recommended itinerary and were the better for it. Our route still went roughly clockwise, but with fewer stops and a midpoint stay in New Delhi. Our final route was:
If we had it to do again we might have tried to either fly from New Delhi to Varanasi or figure out a different train route, as our train ended up nine hours delayed, and that’s apparently not uncommon at all because of how busy that rail corridor is, with both passenger and freight trains.
Similar to our experiences in Bagan and at Macchu Picchu, we wanted to book everything ourselves rather than go through a travel agent. Luckily we had planned far enough ahead of time (~3 months) that “general quota” tickets in the top classes of the trains we wanted were still available. We painstakingly followed directions from Seat61 and others found on Google, successfully got our U.S. phone number verified by the IRCTC system, but still failed because their payment portal wouldn’t accept any international credit cards (despite saying it does).
After a little more research I got in touch with Raj at Train Ticket Please, who was glowingly reviewed by several other travelers online. After surprisingly little back-and-forth he reserved all of our trains for us without any problems. While we had to pay 3 USD extra per journey than if we had been able to book on our own, he also helped us throughout our time in India by projecting delays, sending us seat numbers, and generally being a really responsive resource. If you’re putting together an itinerary anywhere in India, I highly recommend Raj (best contacted by the email listed at the link above).
We also found the Where is my train mobile app really helpful for getting updates on seat assignments and train status.
After spending most of the afternoon wandering around New Delhi, we took a break in the air conditioning of our hotel lobby and then decided it was time to get to the train station when a wedding party took over the space. We ended up arriving at New Delhi Train Station (NDLS) at 6:30pm, ahead of our 8:40pm scheduled departure. After arriving to the very modern and fully-featured Delhi Airport, we were surprised to find that the main train station in New Delhi was more or less barren. After months of easy access to 7-11s and cheap noodles throughout Southeast Asia, it was a bit of a shock to not find any convenience stores.
Our train’s departure was delayed to 11:15pm, so we made a full tour of the station (which has 16 platforms and terminals on either side). We eventually found some small stands selling bottled water and books, and finally one restaurant run by the railway on the 2nd floor of the western terminal. Its possible there is usually one in the other terminal as well, but there was construction closing lots of it. After a basic meal we settled into the Upper Class Waiting Room until around 10:30pm when the train ahead of ours on our platform departed.
Not long after, our train pulled in, we found coach HA1, and got the very nice surprise after all that waiting that the online seating chart was wrong, and our cabin (B) of the coach was a coupe, with only two berths, so we wouldn’t need to share with anyone. We left right at 11:15pm as promised, and quickly settled in to get some sleep. We knew we’d arrive later than the scheduled 8:25am the next morning, but didn’t expect the full nine hours of delay that we ended up experiencing. Luckily we didn’t have anything firm booked to do in the afternoon, as we ended up getting to our hotel in Varanasi at sunset, somehow exhausted even though we just sat around most of the day.
Our AC1 cabin (the highest on Indian trains) was comfortable enough, with clean bed linens provided. We enjoyed both breakfast and lunch served by a train attendant, and which didn’t get us sick. He managed to overcharge us for breakfast since we were starving and not paying close enough attention, but I had my revenge when he came to collect our lunch payment and only got the remainder he deserved for the two meals overall. If you’re getting food onboard an Indian train, I’d recommend you ask to see the menu card they’re all supposed to carry, since it lists prices (even though many items may not be available on your specific train).
After the delays of our first journey, we made sure to schedule activities for the afternoon before departure so we at least wouldn’t waste that time. We got back to our hotel with just enough time to eat, get some food packed to have as dinner on the train, and get a rickshaw to the train station.
This was our one journey overnight in AC2 class, which is very similar to the highest AC1 class, except that: (1) all of the cabins are open to the hallway, and (2) there are beds running lengthwise along the hallway as well, so the perpendicular beds are shorter than in AC1. This class honestly would have been fine for all of our journeys, but because AC1 wasn’t that much more expensive and fit into our budget, we decided to just enjoy it when available.
After a lot of confusion on the train platform, as a different train was loading where the information screens said our train would be, we finally heard an announcement that our train had switched to the other side of the platform, and moments later it pulled up. The coach order was also the reverse of expected, so everyone on the platform had to scramble to swap places lengthwise up/down the train and get on board. While we booked two tickets all the way back in December, we only actually had one confirmed bed until the afternoon of travel, since the other ticket came from the
Reservation Against Confirmation (RAC) allotment, meaning you’re guaranteed space on the train but may not have a bed if no one who is confirmed cancels. Luckily someone did cancel, but our beds were not in the same cabin. After trying a bit to find someone traveling alone in one of our cabins and also disembarking at Agra we gave up and were ready to spend the journey apart. But, in probably the single kindest act we experienced up to that point in India, the train’s ticket collector (without being asked) offered to reassign the bed of a passenger getting on later so we could sleep in the same cabin. Hooray!
As we found in Vietnam, cultural differences really come out when sharing a train cabin overnight. I was amazed that none of the locals silenced their cell phones, and everyone seemed perfectly satisfied trying to sleep while someone a couple beds away carried on a loud conversation. Luckily we had earplugs and eye masks and were able to get more sleep than we expected.
While we left right on time, the train stopped pretty frequently overnight and by the time we woke up (10 minutes before an on-time arrival would have been) we were three and a half hours delayed. Unfortunately no one ever came through to sell breakfast, so we waited hungrily until we arrived at Agra Fort station at 10:30am and hopped in a car to our hotel.
Our shortest train journey in India, the hop from Agra to Jaipur is scheduled at a mere 5.5 hours. Since that’s not enough time for a real rest, we booked a morning ticket so we could get on our way and arrive to Jaipur right around check-in time for our next hotel.
We were again in AC2, choosing not to pay the premium for AC1 since we weren’t planning on sleeping anyway, but ended up getting lucky: our berths (beds 43 and 43) were all alone in their cabin, as the other half of it had been used as a storage closet by the railway. We departed from Agra Cantt station, which was the quietest station we’ve experienced in India. We left only 20 minutes late, enjoyed a take-away breakfast from our hotel onboard, and arrived to Jaipur a mere 14 minutes late.
If every train ride in India were like this, we’d be pretty happy!
Our experience (luck?) on trains continued to improve with our next overnight train. We were scheduled to depart from Jaipur at 11:45pm and arrive to Jaisalmer at 11:45am… and did exactly that! We were once again in AC1, and again were lucky enough to get a
coupe cabin, private to just the two of us. To add to the positives, the Jaipur train station was by far the nicest one we had encountered so far, including a spotless and mostly-empty free lounge for upper class passengers, which we took advantage of for about 90 minutes of waiting at the station.
This was the first train where the onboard ticket checker asked for our passports to verify we were the holders of the ticket, but then said nevermind when we started to dig through our bags to get them out. We also slept through breakfast ordering once again, but had prepared by ordering some good take-out breakfast food from our hotel before heading to the train station.
AC1, which was about 35 USD per person instead of the 20 USD per person that AC2 would have been, felt completely worth it on this journey. There was a lot of activity on the train when we reached Jodhpur around 5:00am, and in any other class we would have been awoken by the chaos for a good 45 minutes. In our cabin we slept through all of it except the stop/start jolts.
Alas, our luck with getting private cabins finally ran out–and on our longest scheduled journey in India, no less.
We got dropped off at Jaisalmer Station about 30 minutes before our train was scheduled to leave, and it was already at the platform and ready-to-board. We got some snacks and water from the station vendors and then found our cabin–we had two top bunks in an AC1 4-bed cabin. After some confusion from another passenger who thought he was also in our cabin (he was supposed to be in the AC2 area of the same coach–they duplicate bed numbers…) we met our cabin-mates: an elderly woman and her middle-age daughter, traveling for free because of their grandson/son’s position in the military. They didn’t speak English, but for the most part were quiet, considerate cabinmates.
Shortly after departing (on-time!) we bought
veg cutlets from the on-train vendor, who swore there was no pantry car on the train this time, so dinner wouldn’t be served (it later was, of course). They held us over well, and at 0.75 USD per serving, we can’t really complain.
Since we didn’t have the cabin to ourselves, we spent most of our waking hours in our top bunks reading on our Kindles. Luckily, we had stocked them up beforehand, as we each finished an entire book on the train and started a second.
After almost 18 hours en route, our train reached Delhi Cantt station only 10 minutes late, where we hopped off and hailed an Uber to take us to our South Delhi hotel. We were booked to go all the way to Delhi Junction in northern Old Delhi, but realized it would mean an extra 40 minutes on the train, and then a longer drive/metro once we arrived, so disembarked a bit early.
Our first journey involving a transfer between trains en route, our full-day trip from New Delhi to Shimla was pretty seamless and absolutely beautiful.
We first took the Shatabdi Express to Kalka. Since it was a Shatabdi train, one of India’s fastest, most-important daytime trains, we had breakfast included in the fare and no overcrowding. We left right on time from NDLS and arrived 25 minutes late in Kalka. There were a number of tour groups on the train with us, also heading to Shimla. The journey was lovely, and luckily we knew that they would hold the departure of the onward train to Shimla until the transferring passengers made it, so weren’t stressing about that during the journey.
Since we had arrived late, we made a quick walk up the platform, grabbed some snacks from a food stall, and then got onboard our next train a couple minutes before it pulled out of the station. All of the trains that run between Kalka and Shimla are “toy trains”, so-named because they run small coaches on narrow-gauge track, slowly winding their way up the mountain range. We took the Himalayan Queen up, which is the most basic of the trains running this route, with an interior reminiscent of a 1980s school bus. Very different from any of the other trains we’ve been on in India, it was really a sightseeing experience. Which is good, since we were onboard for 6 hours to cover just 60 miles of track!
It is a single-track route for its entire length, so passing can only happen at stations along the way with short stretches of dual track. We had a nice view of the engineer trading
one-way tokens with the station employees along the way, which are used to ensure there is only one train on any one section of single track, according to the ever-helpful Seat61. According to the informational signs at stations along the route, the Kalka-Shimla Railway climbs 4,659 feet during its 60 mile run. It also crosses 864 bridges (many of them very small) and goes through 102 (or 107 if you believe a different sign) tunnels. At just 2 feet, 6 inches in width, it may be the narrowest-gauge tracks I’ve ridden on outside of an amusement park.
While we had to cover the same track between Shimla and Kalka on the way down as on the way up, we took the fancier Shivalik Deluxe Express (for 8 USD per ticket instead of 4 USD for the tickets up the mountain), which includes dinner, runs nearly non-stop, and has much nicer seating inside, with fewer people in each coach. That extra cost was well worth it, especially as we ended up in a half-empty coach, with plenty of legroom and no one bothering us. We enjoyed the views for the first couple hours until it was completely dark, then had our small dinner and relaxed until we reached Kalka, on time.
We had a small stroke of luck in that the Kalka Mail was already at the platform, so we were able to transfer directly even though it wasn’t scheduled to depart for 90 more minutes. We were again in AC1, but were not lucky enough to score the single coupe cabin on the entire train. We departed Kalka a few minutes before midnight as the only passengers in our 4-bed compartment, but the other two joined a short while later at our next stop. We went straight to sleep as soon as we could with an alarm set for 30 minutes before our scheduled arrival. Amazingly, when that alarm went off we were actually running early and only a few kilometers from our destination of Old Delhi Junction. Of course, nothing can be that easy, and we sat in place for 45 minutes before pulling into the platform.
We had originally planned to store our luggage at the train station and spend a final day exploring Delhi before heading to the airport for our evening flight to Tokyo. But after over 3 weeks of exploring India, including plenty of time in Delhi, we were pretty over it and decided to spend a bit on a day-use hotel room near the airport, which we headed straight to. We took Delhi’s Airport Express Line, which is a crazy good deal at less than 1 USD per person for a spotless, uncrowded ride to the airport much faster than any taxi could go.
We had seven meals either at train stations or onboard trains. Overall the food was always adequate and never got us sick. It was pretty inconsistent, both in form (one
veg cutlet can be very different from another) and timing.
We ended up waiting for over four hours at the station before our first train ride, and we got pretty hungry. We hadn’t realized before coming that the train station would be so lacking–without convenience stores or a food court. We did finally find one restaurant, run by the railway itself, upstairs in the west terminal. We were amazed at the super-low prices (since they weren’t swindling us by charging above listed rates, unlike most of the on-train attendants) and enjoyed a randomly picked platter of curry, rice, and samosa-like pastry.
We had two meals on our first train, on the way to Varanasi. We really enjoyed the
veg cutlets we had for breakfast, which tasted a lot better than they looked. The omelet option was not a winner. Later we also had lunch, since the train was running so late, and enjoyed our first
veg Thali of our time in India. Like all the other food we had on trains it was reasonable, and was being eaten by a high portion of the travelers. We did have to squabble a bit with the attendant about payment, but more on that in the section on scams below.
Soon after leaving Jaisalmer at 4:45pm, an attendant came through offering
veg cutlets for sale (and at the proper price, surprisingly!) and claiming that dinner would not be served on the train because there was no pantry car on this run. His claim didn’t really matter to us, since we wanted the cutlets, and they were again a really good snack. Of course, later on a different attendant came through offering dinner for sale, which we turned down once he admitted it wouldn’t be served until 9:00pm (a bit late for us, though not unusual for locals).
While many foreign tourists stick only to the premium Shatabdi Express trains during their visits to India, with their included food and attendants who don’t try to scam you, this was our first journey onboard. Since it was a morning route, we had morning tea and then breakfast, with
veg cutlets again as the main item. It was very nice to be served at our seat, not have to worry about proper payment for the food, and everything was fine, if basic. We also enjoyed that they serve with trays lines with a very-specific menu dictated by the Indian Railway system, right down to the presence of salt & pepper satchets and a disposable napkin (plus the clearly listed caveat that you can receive an extra bottle of water for free if your journey (which is scheduled for under 6 hours) ends up taking over 18 hours…).
On our quick walk between trains we stopped at a food stall at Kalka Station and got a couple of flaky fried dough triangles with a mystery filling and some cookies, since we didn’t think we would have the opportunity to buy any food once onboard the tiny Himalayan Queen. Of course, as soon as we boarded we were offered a basic vegetarian lunch by an attendant, and accepted (at 0.75 USD we were willing to try whatever it was). We ended up with some okay daal, rice, and chapati that kept us full for most of the long journey up the mountain. That journey was made longer by the regular stops at intermittent stations where everyone else on the train would spill out and stock up on snacks. After so many trips wondering whether the food attendant would ever appear, we were pretty surprised how many opportunities there were for food on this route!
While the Shivalik Deluxe Express is a narrow-guage “toy train” just like all the others on the Shimla/Kalka route, its
Deluxe status and slightly higher fare qualifies it for free dinner from the Indian Railway System. While our rice, daal, cauliflower, and roti was very basic, it filled us up and didn’t get us sick, so we really can’t complain.
In a stark contrast to our experience at NDLS at the start of our circuit, our final stop was DLI, where there was both a McDonald’s and cheap Indian food available. We disembarked our final train early in the morning and needed some breakfast before heading toward the airport, and it was a really lovely surprise that it had better facilities than its busier sister station a few blocks away.
Compared to our first overnight train ride of the trip all the way back in South Africa in September, we feel like old hands at how to be most comfortable these days. (Good earplugs and an eye mask are mandatory.)
Sleeping on our Indian train rides was definitely easier than the super-bumpy Myanmar train we took, and comparable to the trains we took in Vietnam and Thailand. Just like those, if you’re alone in the cabin, it feels luxurious and is pretty easy to get a good amount of rest. If you’re not alone, it can really depend on who you’re with and what their habits are. We found that most people we shared with acted what we would consider pretty inconsiderately (loud cell phones, 4am conversations with their buddy, random turning on of bright lights, etc) but that no one else but us seemed at all perturbed so it must not be uncommon here.
Typically we would find sealed paper packets of clean bedding at our berth when we got on the train and would make it up ourselves. They don’t wash the pillowcases often, so using the provided towel as a cover for the pillow was pretty popular among everyone in our cabins. On our final train ride the attendant had made up the bed for us before we got on, without expecting a tip, which left us wondering if every other one was supposed to have as well!
We had done some reading ahead of time about others’ Indian Railway experiences and knew to look out for people trying to prey on tourists. On our first walk through a train station we were targeted by a local who tried to stand in our way and demand to see our train tickets. With no uniform and no reason to be asking, we knew it was just his attempt at an opening to scam us, and kept walking right by him, which got some fellow locals to laugh at him for his failed attempt to scam us. If we had been naive, he likely would have told us our train was canceled and tried to get us to buy a (fake) “new ticket” from him.
This one isn’t just a problem for foreign tourists, but affects everyone riding the railways in India. The Indian Railway Catering and Tourism Corporation (IRCTC) which runs the whole railroad, sets uniform food expectations and pricing across the system, and then hires contractors to carry out food preparation and service. Unfortunately these contractors understand they have a captive audience onboard and constantly charge above the established rates for the food. They do this for everyone, but we felt especially targeted when we were in coupes without other locals around keeping an eye on the attendants. The best defense is to know the official pricing (though there is no way to force them to sell to you at that price if they don’t want to…) and ask to see their written menu card before purchasing anything.
Another issue with food service onboard trains is that there are multiple attendants selling different items, and while they may ultimately report back to the same contractor, they are competing against each other in the moment. They will tell you future meals won’t exist (like we were told leaving Jaisalmer), try to convince you that other attendants will scam you, and generally be a bit tiresome.
While we were in India, the press was reporting that improvements are coming to the process for buying food on board trains, which is rife with overcharging attendants and generally poor service. Hopefully those reforms take hold and make a difference, though I expect the attendants will continue to work hard to find ways to make extra money.
We definitely think that traveling by train is the best way to see India, but it unfortunately comes with a requirement that you come armed with your wits about you, plenty of patience, and a bit of humility about how little you can control about the situation. There’s no better way to see the countryside, especially if you don’t have anything time sensitive on the other side and are able to set your expectations low about the service onboard.