Stealthtech's post was so skimpy on details that it's actually somewhat misleading (sorry, dude).
"A midi soundfont is basically like the sound fonts on your stock PC soundcard (127 instruments is general midi)."
Not quite true -- only if your stock soundcard supports Sound Fonts or DLS (a similar computer sound sample standard). These are sound files, basically WAV data, with some performance parameters encoded into them; when loaded into the right kind of soundcard or software sample player, they become a bank of MIDI instrument sounds that can be accessed from your MIDI recording software.
It's 128 patches that can be contained in a single bank of sounds (counting 0-127, so maybe that's why you're one short) , but that's true whether you've got General MIDI sounds or anything else. What General MIDI does is specify the type of sounds that correspond to the patch numbers in a bank. That is, any GM-compatible synth will have Patch 0 (or 1 if you count from 1 to 128)) assigned to an acoustic piano sound, patch 35 (or 36) will be a fretless bass, etc. Further, anything using MIDI channel 10 will be sent to a drum kit, where note messages correspond to a part of the drum kit (snare, tom, ride cymbal, etc.) rather than particluar pitches on the same instrument as they do on all the other 15 MIDI channels.
"Once you have the program you can import any type of instrument in exchange for the violin."
This also isn't quite true. If you have a Sound Font-compatible card like a SB Live or Audigy, you can do this through the card's control panel software, and many recording applications allow you to load banks from within them, but not all. If you don't have a Sound Font-compatible card, you need to install a software synth that will allow you to load these.
Or, of course, the good old traditional way to get different sounds from MIDI files is to own external MIDI sound modules, synths, samplers, etc. and trigger them via the MIDI interface.