I have a site hosted on a shared server with limited bandwidth. Does using a CDN like cloud front minimise bandwidth usage on my hosting server?
Using a CDN does remove traffic from your main hosting server and does reduce bandwidth there.
A CDN also serves files faster than your main hosting because it caches the files in multiple locations so that it can serve them from near where the user is located.
For more information about what a CDN is and how it works, read the CDN article on Wikipedia.
Yes, using a CDN will reduce the bandwidth on your hosting account. Exactly how much may depend on the CDN used.
If you use Amazon CloudFront, you can use S3 as the "origin server", which means you upload the files there and no bandwidth is used on your server.
Other services use your regular website as the origin, meaning when the CDN is asked for a file, it finds it on your site then caches it for other users (so future requests for that same file do not hit your server).
One thing to note is that CDNs can be expensive if you have a lot of traffic. Usually, someone on a shared server would first look to using a VPS or dedicated server before a CDN as it could be cheaper.
A CDN does indeed reduce bandwith, and they can indeed be very expensive. But there's light at the end of the tunnel, there is this free CDN called Cloudlfare. Cloudflare minifies js, css and even html. It will reduce bandwith and make your website faster, you could also use Incapsula. They both have free plans but Cloudflare offers free SSL to everyone.