The cost of flying in India is not high compared to US. It is cheaper as detailed by Maulik in his answer.
The reason people prefer trains in India is because of much better connectivity and frequency. You can reach even small villages using a train in India. The reason people don't prefer trains in US is because there are practically no trains. I used to live in Minneapolis and it is quite a big city and there was only one train that used to pass Minneapolis in the whole day, from Seattle to Chicago.
Moreover, the flight and train prices (with sitting seats) are comparable in US. Train prices with sleeper coaches are more expensive than flights in some cases. So, why would one want to spend so much time in the train when the price is the same. Trains are more of a luxury tourist attraction rather than a mainstream option for long distance travel.
Trains run slower than cars. From Minneapolis to Chicago takes about 7 hours by car and about 10 hours by train. So, people prefer cars because they turn out to be cheaper (if more than one person is traveling) and faster.
I like to blog about various topics ranging from education in IITs to social issues in India and US. All opinions and views presented here are my own and not of my employer.