Hendry joins on a four-and-a-half year deal from Dundee, while his Dens Park colleague Bain has agreed a loan deal until the end of the season.
Bain had been on loan at Hibs, joining to provide back-up to Ofir Marciano, but didn’t make a single appearance for the Easter Road side.
Hendry only joined Dundee last summer, and has long been a target for the Hoops, who finally got their man before the transfer window closed at midnight in Scotland.
Hendry told Celtic’s website: “I’m absolutely delighted to have signed for Celtic. Joining the Scottish champions is a brilliant move for me.
“I know, from playing against Celtic this season, the quality of players that are at the club and I can’t wait to start training with my new team-mates.
“I also know that working with Brendan Rodgers and the rest of the coaching staff here will improve me as a player and I’m looking forward to working hard every day to repay the faith they’ve shown in signing me.”
Bain added: “This is biggest club in Scotland and one of the biggest clubs in the world, so I just can’t believe that I’m here.
“I can’t believe I was on the bench for Hibs against Celtic last weekend and then, just a few days later, I’m signing for Celtic.
“It’s not something that, when I went on loan to Hibs, I thought was ever going to happen, so the past few days have been great, and to get it over the line and be here is absolutely amazing.”
Dundee confirmed that they had received an ‘undisclosed club record fee plus add ons’ for Hendry.