Hi Susanj!
Like Kullukid says, it is a verrrrry loooong journey .... but well worth making, I think! (Well, the Toy Train bit to Darjeeling, anyway

- I don't know about the Macleodganj bit).
The Toy Train leaves from Siliguri (New Jalpaiguri) and winds the 56 miles up through the hills, taking approx. 8 hours. It really is magical - you go through an amazing range of scenery, with fascinating little towns and villages; a very, very special journey.
Darjeeling is great - and we loved it BUT - it is high, and I must say even that modest altitude bothered me and I had to walk very, very slowly up all the steep hills. Don't take this the wrong way, please, but Darj is a
Hill Station, built on the side of several hills, so there is very little flat land about, and in the centre of the town no cars are allowed, so you have to walk everywhere. If you and your health can stand that, then I would unreservedly recommend a trip there - it will be one you would never forget.
The train has two classes, and imho it is worth paying the few rupees extra to travel in the first class coach. It has individual seats rather than bench seats, and is wonderfully decked out in pink velvet, with split cane decorations and etched glass lamps. As there are far fewer seats in there, too, it is easier to make the most of the fantastic views. There are no catering facilities, but several stops which allow you time to buy things from the vendors on the platforms. The on-board loo was in immaculate condition when we were there.
I don't know your budget, but we stayed at the New Elgin Hotel - at the top end of the range. It's a lovely old world place, just off Chowrasta ( the main square in Darj) - with lots of polished wood floors, comfy chairs and log fires in the winter ( not that you will be needing them in August, I suspect

).
If you are still interested, I'll try to find my old receipts to give you some idea of prices.
To make the journey somewhat easier, you might like to consider taking the Rajdhani Express to Kolkata, then overnight from there to New Jalpaaiguri, to connect with the Toy Train, which arrives in Darj late afternoon. Alternatively, you could fly from Delhi to Bagdogra, and go to Darjeeling by jeep - and make your departure by Toy train when you decide to leave.