The baby - who is fourth in line to the throne - was "safely delivered" at 08:34 BST, Kensington palace said in a statement.
The Duke of Cambridge was present for the birth of the baby, who weighs 8lbs 3oz (3.7kg).
Both Catherine and her daughter are "doing well", the statement added.
The duchess had earlier been admitted to the Lindo Wing at St Mary's Hospital where Prince George was born in July 2013.
The statement from Kensington Palace added: "The Queen, The Duke of Edinburgh, The Prince of Wales, The Duchess of Cornwall, Prince Harry and members of both families have been informed and are delighted with the news."
The latest royal joins the line of succession behind her grandfather Prince Charles, father Prince William and brother Prince George.
On Thursday, during an official engagement, Prince Charles had said he was hoping the duchess gave birth to a girl.
Police are guarding the entrance to the Lindo Wing - a private unit within St Mary's NHS hospital.
Prince George, the duke and duchess's first child, will be two years old in July.
Prime Minister David Cameron tweeted: "Congratulations to the Duke and Duchess of Cambridge on the birth of their baby girl. I'm absolutely delighted for them."
Deputy Prime Minister Nick Clegg tweeted that he and his wife Miriam wished the family "all the best".
And Labour leader Ed Miliband wrote: "Congratulations to the Duke and Duchess on the birth of their daughter. Wishing them lots of joy and happiness - and hopefully some sleep!"