Using concatenate with WordPress Thumbnail

the_post_thumbnail function echoes the result and does not return anything.

If you want to concatenate it this way, you should use wp_get_attachment_image instead.

$list .= '<div>'. wp_get_attachment_image( get_post_thumbnail_id(), 'post-thumbnail' ) . '</div>';