Hi Closet Queen,
The route you described: “Delhi and then looping through Agra, Varanasi and Darjeeling by train, and finally exiting to Kathmandu” would be difficult to cover in 3 weeks without being on the move fairly constantly.
You could easily include Jaipur in the Delhi/Agra circuit. Depending on how you want to travel, this could be covered in 2~3 days. The most expensive option, but very cheap by Taiwan standards, would be to hire a driver and ambassador car. If you are looking to save money, you could rely on the trains and buses.
A lot of people hate Delhi at first sight, but if you can get past the first impression and not spend much time in the absolute dumpy tourist trap areas (read: Paharganj) then Delhi can be a very interesting city full of forts, temples and places with thousands of years of history. Part of the city was designed by Sir Edwin Landseer Lutyens during the Raj, and the whole scale of that part of the city is very grand and designed to impress upon individuals that they are just a speck in the midst of the giant power of the British Empire. Apart from the Taj Mahal and a nearby fort, Agra has very little by way of attractions/diversions. Jaipur has the Palace of Winds, the astrological observatory, several forts and it is a great place to buy fabrics and jewelry, but haggle and beware of fakes.
To get to Varanasi, if money isn’t an object, try flying. Otherwise, you’ll be on a very, very long train ride. If you do go by train, get a sleeper, first or second class.
You could actually get to Kathmandu faster from Varanasi and there are buses that take you to the border, where you get off, get into Nepal and then take a new bus to Ktmdu. Don’t buy the direct from Varanasi as these are over-priced and the last time I was there (2002) were just a figment of the bus-wallahs imaginations (i.e. did not exist except to sell).
If you do go to Darjeeling, you’ll have to get to Siliguri or New Jailpaguri in West Bengal to transit up to Darjeeling. If time isn’t an issue, the tiny train going up is worth the trip. You’ll have to backtrack south though as the only tourist entrance to Nepal on the East side is through Karkabitta which is roughly parallel with Silliguri on the Indian side.
In East Nepal as you make your way to Kathmandu there are several places you can stop, but most of them are trail heads (and you don’t want to trek) or tea plantations (and you’ll have been to Darj). Around Kathmandu there are some places you should definately see: Swayambodanath, Bodanath, Patan and Bhaktapur. You could do all of it in 3 days as some are within Kathmandu and others are quick rides away. Check out the three Durbar Squares when you are in Patan, Kathmandu and Bhaktapur. There is an observation place in Kathmandu and one in the nearby area (another city, forgot the name…) where you can see many of the highest Himalayan mountains. Also, the other main city, Pokhara has great peaks you can see right from the lakeside area. If you want to blow about 100USD or more, take one of those flights that shows you everything.
If you want any other suggestions, clarifications or whatever, PM me or post here.
Have a great trip!!!