To deploy your application, you can use either:
ClickOnce, a proprietary technology made by Microsoft to provide seamless way to install and update .NET Framework applications. ClickOnce can contain among its prerequisites .NET Framework itself, which means that you simply need to check the correct version of .NET Framework in the prerequisites window.
Different tools for setup packages (which produce .msi files). They also often have the prerequisites part in them. It was, for sure, the case in Visual Studio 2010. If I remember well, the component was later removed in Visual Studio 2012, but I suppose that third party tools have the same feature as well.
Note: at any moment you should embed .NET Framework in your application, nor there is a need to. Microsoft provides servers and bandwidth for the deployment of .NET Framework, so use it; also, as a customer, I wouldn't especially trust an application which deploys .NET Framework from somewhere else than the official Microsoft website: what if .NET Framework was altered and doesn't do what it is expected to do (or is doing what it is not expected to do).