The answer to this depends on what you are trying to achieve with the video. Video can serve numerous purposes in online marketing and the best methods to employ differ a bit depending on what you are trying to achieve.
If the aim is for as many people as possible to see the video then you want to include it (or a version of it) on YouTube. YouTube is in itself the second biggest search engine on the internet, so a properly optimised video there has the potential to be seen by a huge audience. This is perfect for video that, for instance, introduce your product or service as a solution to a common problem.
One use of video that we employ is to obtain rich snippets. A video rich snippet can leapfrog your page above others in the SERPs and also bring an improved click through rate. Win! If your video is hosted on YouTube and embedded on your site then this is not going to help you. The reason for that is that the rich snippet will lead to a youtube page, not yours so you want to host it privately.
Privately doesn't have to mean on your own server. In fact, in most cases we avoid that. Services like Wistia and Vimeo have paid options that allow you to upload your video with all the ease of youtube, but control which sites the video cam be embedded on. This protects your video and helps you keep that rich snippet result to yourself.
We often now look at using Wistia/Vimeo for the main video, but doing a second edit for YouTube if the content suits their audience.
As Dana says, Phil Nottingham has put out some very good posts about this, and also how to get the most out of whichever path you go down. There is an outfit called reelseo who have also done some good posts on this.