禁食
literally means forbid eating/food
, but the word doesn't specify anything about water. Usually when 禁食
is said, water is allowed. To say 'no food no water', you could say 禁食禁水
.
斋戒
literally means restrained eating; swear off of (certain food)
. So as @Alex's answer suggested, it refers to different rules based on the occasion. Could be vegetarian, could be no pork, could be no food at all. This word is usually related to religious eating control; for non-religious courses (e.g. for health/medical concerns) I would use 限制饮食/控制饮食
instead.
Based on that, to answer your questions:
Could I say, "每逢Ramadan大家都要从早上四点斋戒到晚上六点左右“
Yes you could. But you may want to explain what type of food is forbidden in a follow-up sentence.
Or would it be "从早上到晚上都要禁食”?
That would work too, and 'no food at all' is clearly indicated.