Hi! I've been working on a small .NET project recently called libvideo. It lets you download any YouTube video into a file, given the URL. It supports getting information about the video, such as resolution, bitrate, and file extension, and supports deciphering encrypted videos.
The project is freely available under the BSD 2-clause license and portable to 8 different platforms, including WinRT, Xamarin, PCLs and (of course) the .NET Framework.
Feedback and contributions are always welcome; feel free to file an issue or make a PR if there's a problem. If you need to, you can contact me on Twitter at @jameskodev, or /u/Subtle__ on Reddit. We also have a Gitter chat room available.