The most high-profile change was at the Foreign Ministry. Karzai gave the post, occupied for four years by Abdullah Abdullah, to one of his former foreign-affairs advisers, Rangin Dadfar Spanta.
It was not immediately clear why Abdullah was replaced.
In other changes, Zarar Ahmad Moqbel's temporary post as interior minister was made permanent and Suraya Raheen Subhrang replaced Masuda Jalal as the minister for women's affairs.
Fourteen of the 25 ministers in the new cabinet served in the old cabinet.
The changes now need the approval of the Wolesi Jirga, the lower house of parliament, which is due to be presented with the new government line-up on March 23.