By default with WooCommerce, customers will be presented with a shipping option as part of checkout and be allowed to select “Free Shipping” if it’s available on their order.
Free Shipping could be available because they’ve reached over a certain basket or order value for example.
The actual behaviour you’d like is for WooCommerce to Automatically select the free shipping option if it’s available.
Of course there are code solutions for this, but we’re fans of well written plugins for WooCommerce and WordPress store owners.
WooCommerce Free Shipping Plugin
Here’s a plugin that will help you hide other paid shipping options when free shipping is available in WooCommerce
Hide Shipping Method For WooCommerce
Here’s an alternative with more installs, but isn’t up to date – and doesn’t appear to be kept up to date with WooCommerce and WordPress updates:
WC Hide Shipping Methods