If you have several items that you want to offer for free, and you still want to charge shipping on the other items, then you only need to make sure the store is configured properly to allow so. First, as you've done, you'll need to set Is Free Shipping to Yes on the variant page for the items. Now, since you have FreeShippingAllowsRateSelection set to true, the store will only provide free shipping for that item if you have properly set the ShippingMethodIDIfFreeShippingIsOn appconfig parameter to the ID of the shipping method(s) that can be free for those items. For example, if you have a shipping method called Ground that is shipping method id of 4, and Overnight that has a shipping method id of 5, and you want to offer free shipping for those items for Ground only...then you would set the ShippingMethodIDIfFreeShippingIsOn appconfig to 4
<a href="http://www.aspdotnetstorefront.com">Shopping Cart Software</a>