Place the flour and salt in a large bowl. Whisk to combine. Add the oil and, using your fingertips, rub the oil into the flour mixture until it resembles damp sand. Form a well in the center of the flour mixture and add the water. Using your hand, mix the dry ingredients into the wet until a shaggy dough forms.
Transfer the dough to the counter and knead for 5-8 minutes. The dough should come together but still look lumpy. Return the dough to the bowl and cover. Let rest for 1 hour.
Once the hour is up, cut the dough into 8 pieces and form them into balls. Cover the dough pieces. Working with one ball at a time, roll the dough out until paper-thin on a very lightly floured surface. Spread butter or ghee evenly over the surface of the dough and lightly sprinkle with flour.
Take the edge of the dough closest to you and begin to roll it away from you, taking care to form a tight spiral. Once the dough has been rolled into a thin log, roll each end of the log onto itself in opposing directions to form a sort of coiled S. Place one coil on top of the other and press the dough flat with the palm of your hand. Transfer the dough to a plate and cover. Repeat with the remaining dough balls. Let rest for 1 hour.
Once the second hour has passed, roll each dough ball out to a form a disc. Fry the paratha one by one in a dry cast-iron skillet to set the dough but not brown it. You can hold the paratha at this stage until you're ready to serve.
When you're almost ready to serve, add a tablespoon of the remaining butter or ghee to the skillet and fry the paratha until golden on both sides, adding more butter or ghee as needed. Keep the paratha warm until ready to serve.