For now Blu-Ray is the highest video quality you can get. Therefore, the best solution to amass a HD movie collection is to buy the Blu-Ray and rip them to your hard drives. However, that can take a lot of storage space since movies are either on single sided Blu-Rays (25GB) or double sided Blu-Rays (50GB). Full rips can quickly eat away the space on 1TB or 2TB hard drives.
You can use software like HandBrake to encode your Blu-Rays to MKV files using the x.264 codec. But this is a time consuming process especially if you are trying to shoot for high video quality. Generally, speaking you can reduce a movie's storage size by about 50% and still retain very video quality. So that means a movie on a 25GB blu-ray disc will be about 12.5GB and a 50GB blu-ra disc will be about 25GB.
You cannot use video encoding software to increase video quality. That is impossible. The sole purpose of video encoding is to reduce the file size of the video. That is generally done by either tossing out some details that your brain will not notice or by compressing them.
If you have a 120Hz LCD HDTV (many people do), then you can use that to "help" increase picture quality. When a HDTV is operating in 120Hz mode it basically takes the video input of 60Hz or at most 60 frames, and doubles it. This is done by creating and inserting an interpolated frame between every two actual frame. This creates the illusion of more details, but some people do not like the affect it has on movies and they switch the HDTV down to 60Hz mode so that the HDTV does not do any sort of video processing.
Also 120Hz mode is to help with the playback smoothness of the video. Movies are basically recorded at 24 frames per second and TV programs are recorded at 30 frames per second. Both rates are actually slightly less, but I'll just use whole numbers. As stated, the video received by a HDTV is at 60 frames per second. Because TV programs are recorded at 30 frames per second; 30 divides evenly into 60 and 120 so when the HDTV is in 60Hz mode all the HDTV need to do is divide the input by 2 so that it can smoothly display the TV program. Likewise, in 120Hz mode the HDTV divides the output by 4 for smooth playback.
However, movies are different 24 does not divide evenly into 60, but it does divide evenly into 120 (divide by 5). Since 60 is not divided evenly by 24 this means that the HDTV repeats 6 frames every second which creates a little bit of video stuttering. Putting the HDTV in 120Hz mode eliminates the stuttering because the HDTV do not have to repeat frames due to the fact that 120 divided by 24 results in a whole number.