What is the difference between 免费 and 无偿？
免费 means free of charge. As pointed out by Wikipedia, it is usually applied to commercial products or services that normally charge money and now for free as a part of business strategy. E.g. 免费的午餐 (free lunch), 免费试吃 (free sample of food), etc. 

无偿 means no compensation, or 'not asking anything for return'. It is usually applied to non-profit, voluntary activities. E.g. 无偿献血 (blood donation), 无偿社区服务 (community service provided by volunteers), etc. There are usages of 无偿 in legal space which can be connected with commercial activities, but that's a completely different way of expression in a completely different context. 

Strictly speaking, '免费给了我六个苹果' means he gave you six apples for customer relationship for reasons like you're a frequent customer or you just make a bulk purchase of other stuffs. '无偿给了我六个苹果' means he gave you six apples out of kindness because you lost your wallet or you're starving. In spoken language, however, their usages are usually mixed and both of your sentences are fine. 

BTW, '送' already implies 'for free'. So '免费送了' is unnecessary repetition but again sounds fine in spoken language.

Update: As the other answer pointed out, 无偿 is almost never used in Hongkong which indicates that the usages can be highly regional. Something to keep in mind.