Be careful on Free Shipping ... there are 2 Free Shipping modules ...
Free Shipping freeshipper
Free Shipping Options freeoptions
Free Shipping freeshipper is a "special" Free Shipping module to work with Free Shipping based on Always Free Shipping and 0 weight meaning Free Shipping and that is for "Everyone" ... even though there is a Zone setting in it, this is there for advanced coders for "convenience" of modifying this for special uses but doe NOT work, by default, with a Zone setting ...
Free Shipping Options freeoptions can be used based on Total, Item Count or Weight limits where you can also add a Zone for who this is Free Shipping is made available to ...
For adding Free Shipping to a Category, meaning the master_categories_id of all products in a specific categories_id ... you can do this by a SQL command, if you have too many Products to manage this manually using the Tools ... Install SQL Patches ...
1 Backup your database first, as you will be very sad if you mess up and do not ... 
2 You can then issue the follow command to change ALL Products in a specific categories_id where the master_categories_id is set using:
Code:
UPDATE products SET product_is_always_free_shipping = 1 WHERE master_categories_id = XX;
where XX is the master_categories_id for the Products that you want to set as Always Free Shipping ...
Again, this is Free Shipping for "Everyone" regardless of Zone ...