Centrist Armin Laschet is now in a good position to succeed Angela Merkel as Germany's chancellor.
Mr Laschet, premier of North Rhine-Westphalia state, defeated two rivals in the party's virtual conference.
He is now in a good position in the race to succeed Mrs Merkel when she steps down as German chancellor in September, after 16 years in office.
But he faces a changed political landscape following the Covid
Mr Laschet, 59, defeated conservative businessman Friedrich Merz in a run-off vote by 521 votes to 466. A third candidate, Norbert Röttgen, was eliminated in the previous round.
He replaces as chair of the party Annegret Kramp-Karrenbauer, who failed to live up to her billing as Mrs Merkel's appointed successor after taking office more than two years ago.
Germany goes to the polls in September, but the CDU leader is not guaranteed to become its candidate for chancellor.
Health Minister Jens Spahn, who has been elected as one of Mr Laschet's deputies, and Markus Söder, leader of the CDU's Bavarian sister party the CSU, could also step into the ring, though neither has yet said that they want the job.
A final decision will be made in the spring.
Mr Laschet is a loyal supporter of Mrs Merkel, and said during the campaign that a change of direction for the party would "send exactly the wrong signal".
In his victory speech, he said: "I want to do everything so that we can stick together through this year... and then make sure that the next chancellor in the federal elections will be from the [CDU/CSU] union."