When a train comes to a big town, it is "in" it. When it passes through a small town, it is, briefly, "at" it.
It depends. Are we discussing when the train entered the city proper? Then "in" would be accurate. If we're discussing a specific stop called "London", then I would say "at".
I think you're all missing the obvious inaccuracy with the statement: a train arriving in London only 10 minutes late? Ridiculous - they're always at least 20 minutes late!
i am of the opinion that neither should be used actually...and the sentence should just read... "the train arrived London 10mins late"...any takers?