Is there a way to get from Bath to London using public transport on 25th Dec? Or at least from some place near Bath?
All the public transport I could find is shut on christmas Day.
I checked national rail, every coach company I could think of (National Express, megabus, etc).
There aren't even any direct flights available from Bristol.
The only thing that I could find, and that is if you are really desperate, is flying Bristol - London via Amsterdam with KLM for around £200. The only problem then is to get to Bath. There are no busses running according to First, but you might perhaps be able to get a taxi (if you're really lucky).
Many of the stations en-route from Bath to London would be operated by South West Trains and the service itself would be operated by First Great Western - and the network itself shuts down for 25 and 26 December - so I don't think there are any bus or train services at all. How many people will be travelling with you? If it's a few people, then your best option would be to book a taxi in advance with a local cab company in Bath. There are cab companies you can find online but they typically charge higher prices. Call a local company instead.
Your other option would be to travel from Bath to London on 24th December on the last train, and then stay at a hostel / hotel. Do remember that public transport services within London shut down on 25-26 December too.
EDIT: If you're flexible on arriving early on 24th December or arriving later on 26th December, National Express has coach services from Bath to London that arrive early morning or you have train services as well as coach services too on 24th December.
I think you'll struggle to find public transport over that sort of distance. There are some local buses on Christmas, but that tends to be about it.
One of the few exceptions I know of is the Oxford Tube, which is one of the two express buses between Oxford and London (and not a train as the name might suggest!). On Christmas day, there'll be buses from Oxford to London once an hour (via Heathrow).
Not sure if that's much help for your case, as getting to Oxford is likely to be just as tricky as London, when starting from Bath!