A fire has destroyed a historic pub northwest of Sydney.

Firefighters worked to control the blaze after it broke out at the Jolly Frog Hotel in Windsor about 10pm on Monday.

Destroyed: The Jolly Frog in Windsor. Credit:Paul Mills

Surrounding roads were closed for several hours, with the blaze prevented from spreading to neighbouring buildings, police say.

But the hotel was destroyed.