In a large bowl add the flour, salt, sugar, yeast, 3 eggs, 2 egg yolks and the milk. Mix this until a dough forms and then knead it for 10 minutes.
After 10 minutes, add about a tablespoon of the butter, mix until incorporated then add more butter. Keep repeating until all the butter has been added.
Once all the butter has been added, knead the dough for 15-20 minutes, until it is smooth and shiny.
Place this dough into a large, slightly oiled bowl. Cover and leave to rise in a warm place until it has doubled in size, this should take 1-2 hours.
Once the dough has risen, place it onto a lightly floured surface and roll it out into a large rectangle. I like to roll it into a 45x32 cm rectangle, it doesn't need to be exactly this size, you just want it to be around 0.5 cm thick.
Cut 8 triangles out of this then get one of the triangles, cut a small slit at the bottom of it, then roll it up into a croissant shape (if you need to visualise any of this, I've included pictures above).
Repeat this with all the croissants and then place them onto baking paper lined trays. Make sure to leave gaps between the croissants, they will be a lot bigger after they've baked. I recommend putting them on 2 baking trays.
Lightly cover these and then leave them to rise, in a warm place again, for about 1 hour - 1 hour 30 minutes. They're ready to be baked when they have almost doubled in size. If you gently touch them they should feel a lot softer than they did before.
About 20 minutes before your croissants are ready to be baked, pre-heat your oven 180c/350f.
Once the croissants have risen, whisk your extra egg and gently brush this over them.
Bake them for around 20-22 minutes, or until they are golden brown on top.
After baking, whiles they were still hot, I like to brush them with some melted butter. This is optional, it just makes them look shinier.
Let them cool down for a bit and then you can enjoy!
