Software based synths, also known as a softsynths or virtual instruments, can be loaded via your Digital Audio Workstation and commanded by your MIDI Controller.
They might sound like a keyboard wrapped in silk and velvet...
But they are in fact just samples or models that simulate various sounds.
In other words, you can load samples of one of a kind instruments onto your computer and trigger those sounds out of any keyboard with a MIDI interface.
But that's just the beginning.
Lay down a basic bass line then load samples to play it back as a slap bass, or an blues organ, or a steel drum!
The audio output that you hear is generated from the MIDI data by the computer, and played back as music by the computer.
The real beauty is that they allow you to use a junker of a keyboard as a MIDI controller to trigger the sounds you really want.
They also don't take up any physical space in your studio, but rather memory on your computer.
So softsynths and hardware synths are not necessarily two totally different things.
Instead you can think of the software based synth as a tool you can use in conjunction with a keyboard or other MIDI controller.
You will not be able to use the virtual instruments by themselves, they have to be loaded into a sequencer interface and trigger by a controller.
Since they are 100% software based, you will need to consider the horsepower of your computer when deciding to go down this road.
Whereas the hardware based option runs the samples on its dedicated processors, these samples will run off of your computer.
If your computer is not beefed up enough to handle this workload, you'll notice an increase in latency when using these software packages.
In other words, the time between when you press down the key and when the sound is produced will have a delay.
This can be really distracting to the point of unplayability if it grows past a certain threshold (~30-40 milliseconds).
And, like any software, it will be a little more temperamental than the samples used on the dedicated hardware synthesizers... but these issues can be solved.
Nothing that verifying current device drivers and a few google searches can't fix, just know that it is a little bit of added complexity but I believe totally worth it for the payoff.