We travelled by a combination of air and train, leaving Mumbai at about 4 p.m. and getting to Agra just after midnight. Our schedule was:
4 p.m. (approx) Air Deccan flight Mumbai - Delhi (cheaper than the train!) Arrive around 5:30.
Autorickshaw to Nizamuddin Station, where there is a fine railway refreshment room for a cheap and clean dinner.
Train at around 9 p.m. to Agra, arriving a few minutes after midnight.
Maybe something like that would work for you, too. We found the trains very cheap and reliable, and Air Deccan even cheaper (and only twenty minutes late).
Agra has an airport. I am not sure if there are direct flights from Mumbai to Agra (you might have to get a connection in Delhi, which is hardly worth it), but you should check Jet, Indian Airlines, etc.
If you fly into Delhi, Agra is approximately 3-3.5 hours by car or train. Train is cheaper, obviously.
You could also fly into Agra from Mumbai via New Delhi or some other city depending on the connection provided by the airline. Agra is also very easily accessible by train from New Delhi after a flight from Mumbai to Delhi or else there is even a direct train to Agra from Mumbai (Central Railway) although it is a very long journey.
Hope this helps.