Add masa harina to a large mixing bowl and pour the water over it. Stir to combine — it will appear dry, that's okay. Let rest 15 minutes to hydrate.
In the meantime, add dried corn husks to a large mixing bowl and cover with room temperature water. Set something on top to submerge them (such as a small skillet). Let soak at least 15 minutes and up to 30 minutes.
In the meantime, heat a pot, Dutch oven, or large rimmed skillet over medium heat. Prepare filling by sautéing the onion and garlic in oil or water. Then add your choice of meat, beans, and/or veggies, and seasonings/spices. Cook until everything is tender and the flavors have developed. See our Green Chile Chicken Tamales or Sweet Potato Black Bean Tamales for additional guidance.
To the soaked masa mixture add salt, baking powder, and avocado oil and stir. Then add broth (warm or room temperature for best results) a little at a time until a thick paste is achieved. It shouldn't be liquidy or crumbly (see photo). Be sure to stir well so it's fully combined. Set aside.
Remove corn husks from water and pat dry. Then take one husk in your non-dominant hand (or place on a flat, clean surface) with the wider edge toward you (narrow end away from you). Add 2 – 2 ½ Tbsp masa in the center near the bottom (closest to the end facing you), then use the back of a spoon to spread the mixture from the bottom 1/3 center of the husk to the right edge (see photo). A semi-thin layer is ideal (not too thin, not too thick).
Then add 1 ½ Tbsp of the filling to the center of the masa. Fold the right edge of the corn husk over the filling (toward the masa's left edge) and tuck right where the masa ends on the left. Then continue rolling until the husk’s seams meet. Next, fold the narrow edge of the corn husk tightly toward the opposite side of where the seams meet and set in a loaf pan or dish that will keep your tamales upright (see photo). Continue until you have used all your masa mixture and filling (as recipe is written, ~26 tamales).
To a large pot or Dutch oven, add a steamer basket. Fill a pot with water until it almost touches the base of the steamer basket. Then add the tamales, keeping them upright if possible (see photo).
Turn the heat to high, then once boiling, reduce heat to low, cover, and simmer to steam the tamales for 1 hour. At the 1-hour mark, carefully remove one tamale to ensure it's cooked. Allow it to cool for a couple minutes, then unwrap. If the dough is fully cooked it shouldn't stick to the husk and should be semi-firm and springy to the touch. If it's still wet or sticking to the husk, cook tamales for another 10-15 minutes then check again to ensure doneness.
Once cooked, remove the lid and let steam escape. Then they're ready to enjoy! Top with desired garnishes. We loved guacamole, hot sauce, diced red onion, and a little dairy-free yogurt (Culina plain).
Store cooled tamales covered in the refrigerator up to 4-5 days. Reheat in the microwave or in a cast iron skillet on the stovetop until hot.
Or, to freeze, let tamales cool, then add to a parchment-lined baking sheet and arrange in a single layer. Freeze until firm, then transfer to a well-sealed container where they should keep for at least 1 month, oftentimes longer. To cook from frozen, either let thaw then heat in the microwave or a cast iron skillet on the stovetop until hot, or microwave for 1 minute, remove husk, then continue heating in the microwave or in a cast iron skillet on the stovetop until hot.
*Nutrition information is a rough estimate calculated with the lesser amount of vegetable broth and without filling. *Masa mixture roughly adapted from Seasons of My Heart cookbook.