Make the Cake: Preheat the oven to 350 degrees F. Grease a 9x13-inch baking pan; set aside.
In a medium bowl, whisk together the cake flour, baking powder and salt; set aside.
Beat the butter with an electric mixer on medium speed until fluffy, about 1 minute. Decrease the speed to low and with the mixer still running, gradually add the sugar over 1 minute. Stop to scrape down the sides of the bowl, if necessary. Add the eggs, 1 at a time, and mix to thoroughly combine. Add the vanilla extract and mix to combine. Add the flour mixture to the batter in 3 batches and mix just until combined. Transfer the batter to the prepared pan and spread into an even layer. (This will appear to be a very small amount of batter.)
Bake for 20 to 25 minutes, or until the cake is lightly golden and reaches an internal temperature of 200 degrees F. Remove the cake to a cooling rack and allow to cool for 30 minutes. Poke the top of the cake all over with a skewer or fork. Allow the cake to cool completely and then prepare the glaze.
Make the Three-Milk Glaze: In a 4-cup measuring cup, whisk together the evaporated milk, sweetened condensed milk and the half-and-half. Once combined, slowly pour the glaze evenly over the cake. Refrigerate the cake for at least four hours, or overnight.
Make the Whipped Cream: Using an electric mixer, whisk together the heavy cream, sugar and vanilla on low speed until stiff peaks form. Increase to medium speed and whip until thick. Spread the topping over the cake and allow to chill in the refrigerator until ready to serve. Leftover cake should be covered and refrigerated for up to 1 day.
Cake Flour: Cake flour contains less protein than all-purpose flour and will create a fluffier, more tender cake. Substituting all-purpose flour will affect the texture of the cake. If you do not have cake flour or can't get it, make this substitution: whisk together ¾ cup sifted all-purpose flour + 2 tablespoons cornstarch for each cup of cake flour.
Half & Half: This is a dairy product sold in the U.S. If you cannot get it where you live, substitute equal amounts whole milk and heavy cream (or all heavy cream for an even richer cake).
Thin Cake: You'll notice when the cake comes out of the oven that it is not exceptionally high, but don't worry! Once it absorbs all of that liquid, it will plump up beautifully.
Poking Holes: Try not to hit the bottom of the pan when you poke your holes, which will keep the most liquid in the cake. Some will naturally seep out as it soaks, but by not penetrating the bottom of the cake, you keep the most liquid possible inside the cake.
Pour Slowly! When pouring the milk mixture over the poked holes of the cake, go as slowly as possible. If you rush the process, the cake won't be able to absorb everything. Even if it takes you 10 to 15 minutes, take it slowly. Drizzle a little bit evenly over the surface, let it sink in, then do a bit more. It is well worth the patience!
Serving Suggestions: You can serve the cake as is, chilled of course. In Mexico, an authentic tres leches cake recipe isn’t as sweet as this one, so in Mexico, they serve it with slices of fresh fruit on top; most often, slices of strawberries, peaches, mangos, and pineapple. Toasted coconut and pecans are also popular toppings.
Storage: The cake can be stored in the refrigerator, covered, for up to 4 days.
Make-Ahead: This is a fabulous make-ahead recipe because it needs to chill in the refrigerator for at least 4 hours after you pour over the milk mixture, and overnight is even better! For the best flavor and texture, I recommend serving it the day after the milk mixture is poured over, but leftovers will keep in the refrigerator for another couple of days.
Freezing Instructions: You can freeze the plain cake after it has baked, but not the soaked, assembled cake (it would be too mushy). To freeze the cake, cool completely, wrap tightly in plastic wrap and foil and freeze for up to 3 months. Thaw overnight in the refrigerator, then proceed with the recipe to poke holes, pour the milk mixture, and top with whipped cream.