How to exclude a widget from W3 Total Cache Plugin

You need to use fragment caching so enable PHP in the widget and then use the following tags:

<!-- mfunc --> 

The following links should help:

https://wordpress.org/support/topic/using-shortcodes-with-fragment-caching/
https://www.justinsilver.com/technology/wordpress/w3-total-cache-fragment-caching-wordpress/