Plot hole: Farley Granger meets a math professor on a train bound from New York to Washington, and is able to prove as much to the police. The professor got on in New York and got off in Wilmington, DE, while Granger boarded the train in the fictitious town of Metcalf, NJ, and rode on to Washington. Thus, they met between Metcalf and Wilmington. But the police say Granger could have boarded the train in Baltimore, by which time the professor would have gotten off and they never would have met.
Plot hole: During the wine cellar scene, Devlin & Huberman are kissing & Sebastian catches them & confronts them. Sebastian then tells Huberman to go to her guests. There is no way that Devlin, who loves Huberman, would not automatically go to Prescott & tell him to immediately pull Huberman from the Sebastian house. Her cover is compromised & her life is in danger! Sebastian saw them both near the wine cellar & will now go to the wine cellar to get the wine (that's why he was down there). He will see that the key is missing. Sebastian is not stupid; he will do the math. If nothing else, Devlin should tell Huberman to not, under any circumstance, put the key back on Sebastian's keyring, since this will prove Huberman's guilt to Sebastian. But neither Prescott nor Devlin say a thing to Huberman (which is understandable in Prescott's case - he doesn't love her - but not Devlin). Devlin is a spy. He should have, & would have, known better.
Plot hole: Early in the movie, when Joe Stefanos tells Mary, the owner of the luncheonette, that he found Jeff Bailey by passing by and seeing the name on the sign of the gas station, it makes no sense. He only knew him by the name Jeff Markham. Even if he was just lying to her, he uses the same explanation when he is alone talking to Jeff. We never know how he found him.
Suggested correction: He told Jeff that he saw him pumping gas at the station.