I just got this error so wanted to post here in case someone else runs into it. Upon activation, w3tc added itself to the .htaccess file (as it should), but joined itself to the previous rule:
RewriteRule . index.php [L]# BEGIN W3TC Browser Cache
Instead of starting a new line:
RewriteRule . index.php [L]
# BEGIN W3TC Browser Cache
Looks like @northantsphotos ran into the same thing: http://wordpress.org/support/topic/500-internal-server-error-due-to-htaccess-problem and found this same solution via: http://biostall.com/internal-500-server-error-after-activating-w3-total-cache-wordpress-plugin