That said, a 46GB video doesn't seem legit - it's likely someone's just upsampled the bitrate without actually adding any new information, and tries to sell it off as a "high quality" video. Kind of like people who upscale 640x480 videos to 1920x1080 and claim they are "HD" on youtube.
It could also be that the video in question is very long and/or whoever has the source uncompressed video (imagine after post-processing in a PC) wanted to lose as little information as he could, and anything below 50GB is fine to save on a BluRay disc.
As for 1080p video looking better downsampled to 720p in realtime; it might*, but if the bitrate is high enough, or the video is uncompressed, it won't.
The 720p video was at somepoint downsampled, and the resampler used could be better than what you're going to need to use in real time.
The best thing to do is to convert your videos to the resolution they will be displayed at. Or if you're doing it with the intention to keep it indefinitely, go with the highest reslution+bitrate that makes sense (no upsampling, no unnecessarily high bitrate).
Also keep in mind the CPU/GPU power you will need to decode your videos.
* Compressed video is usually composed out of blocks, and if you're downsampling 1080p to 720p those blocks will look smaller on the target area. On the other hand 720p video needs less bitrate to achieve good quality with it's resolution.