Watford made a fast start with Giorgi Chakvetadze causing early problems as the hosts looked lacklustre, and the Hornets took advantage when Yasser Larouci’s low cross from the left was scrambled home by Bayo after his marker Lewis Gibson had lost him.
It could have got worse for Argyle eight minutes later but Larouci’s pull-back caught the heel of Kwadwo Baah and went to safety.
But just as Watford looked to be getting total control, Gray’s superb right-footed volley into the opposite bottom corner from Gibson’s crossfield pass turned the game on its head.
Morgan Whittaker was inches away from putting the hosts ahead moments later, while Michael Obafemi also went close as the goal kick-started Argyle’s confidence.
That confidence should have been shattered after 31 minutes when Porteous managed to shoot wide of the Argyle post after a goalmouth scramble from a corner – but the Scotland defender made up for it 10 minutes later.
Imran Louza’s floated free-kick was played across the face of goal by Pollock and Porteous was there with a right-footed finish from six yards.
Argyle started the second half positively but Watford controlled the possession and tempo well as they protected their lead, limiting the hosts to half-chances.
The Pilgrims’ evening got worse when star forward Whittaker limped off with a foot injury with 10 minutes left, and Watford could have wrapped the game up eight minutes later as Larouci broke from midfield and fed Bayo, but Dan Grimshaw did well to block the Ivorian’s effort.
Whittaker’s replacement, Callum Wright, shot wide after some good footwork in the penalty area soon after.
Watford looked to have seen the game out until substitute Mustapha Bundu found Gray in a bit of space on the corner of the 18-yard box and the Jamaica international – who left the Hornets in 2022 after five years – superbly curled into the top right corner with seconds to spare.