This is not really a question anymore as I stumbled on the solution myself, but I thought it worth sharing as I could not find it after 20 google searches.
When publishing a vs 2010 c# program with .net 4.0 framework dependencies, I wanted to "download prerequisites from the same location as my application". Well, this failed like it has in the past for .net 3.5 (according to hundreds of forum posts). The solution wound up being 100 times simpler than any post I found...
So, all I had to do was download "dotNetFx40_Client_x86_x64.exe" from http://www.microsoft.com/en-us/download/details.aspx?id=24872 and copy it into "DotNetFX40Client" in my bootstrapper folder.
I'm running Windows 7 Pro x64, so the SDK bootstrappers were in
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages
Likewise, I got the "WindowsInstaller-KB893803-v2-x86" from http://www.microsoft.com/en-us/download/details.aspx?id=25 and put it in "WindowsInstaller3_1"
Hope this helps, and I hope I didn't violate any Stack Overflow rules by posting a solution. All the other questions here were related to .net 3.5