Preheat the oven to 350°F (180°C). Butter cookie sheets or line them with parchment paper.
Beat ¾ cup unsalted butter in a large mixing bowl until smooth, about 20 seconds.
Gradually add 1 cup light brown sugar and ½ cup white sugar and beat for 2 minutes, until creamy, scraping the sides of the bowl as needed.
Add 1 egg and beat at medium speed for 3 minutes, scraping the sides of the bowl a few times.
Add 2 tablespoons whole milk, 1 teaspoon vanilla extract and ½ teaspoon orange zest if using. Mix until incorporated.
Add the sifted 3 cups old-fashioned rolled oats, ½ teaspoon baking soda and ¼ teaspoon salt to the butter mixture. You can sift them in a separate bowl or have the ingredients measured and sift them directly over the butter mixture (my choice).
Mix at low speed until well blended, and no dry spots remain. But don't overbeat at this point.
Mix in 1 ¼ cups all-purpose flour in two parts, so they're easier to incorporate.
Add ¾ cup white chocolate chips and ¾ cup dried cranberries and mix with a spatula. Make sure no flour remains at the bottom of the bowl.
At this point, the cookie dough can be refrigerated for up to a day. See note below.
Scoop out portions onto the prepared sheets, leaving space between them, an inch or two, depending on the size of the cookie. If making larger cookies I flatten them slightly with my fingers tips so there's less chance of the center taking too long to bake and the sides being too brown.
Bake for 10-12 minutes, depending on the size, until golden brown and still soft in the center. I use a 1.5-inch cookie scoop and bake them for exactly 10 minutes. Smack the pan on the counter immediately after you take it out of the oven. It will deflate the cookies a little and help with the texture.
Let them cool on a wire rack for about 15 minutes before lifting them carefully from the paper and cooling them completely.
Once they cooled down completely, transfer the cookies to jars or an airtight container.