Pittsburgh shipped Watson to the Los Angeles Dodgers in exchange for a pair of minor leaguers, infielder Oneil Cruz and right-hander Angel German.
The Pirates then swung a deal with the Philadelphia Phillies, bringing in Benoit in exchange for minor league right-hander Seth McGarry.
Watson, 32, who will become a free agent after the season, was 5-3 with a 3.66 ERA in his seventh season -- all with Pittsburgh. He blew seven of 17 save chances and lost his job as closer in mid-June.
Benoit, who turned 40 last week, appeared in 44 games with the Phillies, compiling a 4-1 record with a 4.07 ERA and a pair of saves. He is 58-47 with a 3.80 ERA in 16 seasons.
Cruz, 18, was batting .240 with eight home runs and 36 RBIs in 89 games with Great Lakes. German, 21, had a 1-0 mark with a 1.91 ERA and seven saves with Great Lakes of the Midwest league.
McGarry, 23, made 31 appearances at Class A Bradenton and logged a 1-0 record with 14 saves and a 1.34 ERA.