I believe this is a runtime difference. If the rule is blocked you will get a clear message about it at runtime. But if the rule is just not available it won't be considered by rule resolution mechanism.
Rule Resolution is the process Pega uses to determine the most appropriate rule to execute.
I have attached a document that talks about steps of rule resolution in detail.
At the end of rule cache population a Not available rule will not be picked up as default rule as they are eliminated in 2nd step. However , a default rule can be a blocked rule also. While check for blocked rule is made then user will get a notification about it. When a blocked rule becomes a default rule and is picked, it means that it is going to block other candidates no matter even if they are available. So major difference between Not available and Blocked rule is that the Not available will not effect any other rules and will not be a blocker for other candidates to become default rule.While Blocked rule is capable of becoming a default rule.If it happens to be picked, then it will throw a notification. With that we can come to know a blocked rule is blocking the other candidates.