I always start by setting my oven to 350°F so it's fully heated by the time my casserole is ready to go in. A properly preheated oven makes a big difference in how evenly the top browns. I also take a minute to grease my baking dish lightly so nothing sticks once it's baked and bubbly.
If I'm using frozen hash browns, I let them thaw just enough to break apart but not fully defrost into mush. For fresh potatoes, I shred them on a box grater and give them a quick rinse to remove extra starch. Either way, I pat them lightly dry so my casserole doesn't turn watery.
In a large bowl, I whisk together the sour cream, condensed soup, melted butter, and garlic salt until it's completely smooth. This creamy base is really what makes the dish taste like real comfort food. I make sure there are no lumps before moving forward.
Next, I fold in the potatoes, chopped onions, and most of the shredded cheddar cheese, saving a little for the top. I stir gently but thoroughly so every potato shred gets coated in that cheesy, creamy mixture. This is the step where the casserole really starts coming together.
I spread the mixture evenly into my prepared 9×13 dish, pressing it down lightly with a spatula. Then I sprinkle the remaining cheese over the top so it melts into a golden, bubbly layer. An even layer here means every scoop gets the same cheesy goodness.
I toss my crushed cornflakes or potato chips with a little melted butter, then scatter it evenly over the cheese. This crunchy topping is honestly my favorite part of the whole dish. It adds texture that contrasts beautifully with the creamy potatoes underneath.
I bake it uncovered for about 45 minutes, until the edges are bubbling and the top is golden brown. My kitchen smells incredible at this point, and it's always hard to wait. I let it rest for five minutes before serving so it sets up nicely.