This is what I do, not saying it is right or wrong, just that it works for me!
I write child themes for tutorials and use template parts extensivly, great for adding to existing files, example would be adding two new menu areas to a twenty eleven child theme.
I use include for functions and setup pages, example would be this child theme which has the Woo Themes FlexSlider, the slider code is in an /inc/ or /flex-slider/ folder and called from functions.php, the slider is 'loaded' via a template part.
For example, I have a chunk of code that displays social sharing widgets. Should that be an include or a template part?
I would use a Template Part, if a file was deleted or renamed by mistake, include will give a fatal error unless coded for if( file_exists('filename') ), a template part will just ignore, a template part can also exist in a parent and or child theme and WordPress will find and load it, by priority.
What I tend to do is to name the files, so I know what they are, lets use the 'social media' as an example, I have done this and used two files.
Anyone reading my code would know what these files and calls were:
social-horizontal.php and social-vertical.php
<?php get_template_part('social','horizontal'); ?>
<?php get_template_part('social','vertical'); ?>
I also wrote a post last year when I discovered how powerfull the template parts are giving some reasons, not the best written post but it might help.