In a large saucepan, combine the water and milk. Bring the mixture to a simmer over medium heat. In the meantime, melt the coconut oil (or butter) in a 12-inch skillet over medium heat. Once shimmering, add the oats and cook, stirring occasionally, until golden and fragrant, around 2 minutes. This toasting step greatly enhances the flavor of the oats.
Stir the oats into the simmering water/milk mixture. Reduce the heat to medium low and simmer gently for about 20 minutes, stirring occasionally, until the mixture is very thick.
Stir in the salt. Continue to simmer the mixture, stirring occasionally and reducing heat as necessary to prevent scorching on the bottom, until almost all of the liquid is absorbed, about 10 minutes. (If you have doubled the recipe, your oatmeal might need an extra 5 minutes cooking time here.) The oatmeal will be very creamy when it’s done.
Remove from heat and stir in any mix-ins that you’d like. Let the oatmeal rest for 5 minutes before serving so it has more time to thicken up and cool down a palatable temperature.
Portion oatmeal into bowls and add any toppings you’d like to portions that you intend to serve immediately. Let any extra oatmeal cool completely before covering and refrigerating for future breakfasts.