The shipping charge usually applies to the shopping cart as a whole and not to an individual item in it. This means that if the cart contains only the item that you want to provide free shipping then it should be pretty straightforward to get the job done. The situation gets complicated when the cart has different items since it will still be subject to the shipping charges, even if an item has free shipping the other items don’t. So in the end, the customer will still end up paying something. The only way they are guaranteed free shipping is if they only ordered that particular item.
Also, if you are using a shipping integration like FedeX or UPS, or others, the easiest way to handle this complex case would be to set the weight of the other items to 0.
I hope this answers your questions. If not, please provide more details and we will be happy to dig into it a little bit more.
Let us know otherwise.