Matches against the same race seems to be the trickiest. Countering Terran vs Terran is a bit harder and it pretty much depends on your scouting abilities. If you build your forces randomly you may lose even to a smaller opponent's force. Tactics play a vital role in such matches and it is crucial to know the right technique.
For countering marines the best choice would be to use tanks as they will dominate with their amount of damage. Another, rather obvious unit is sniper, which kills a marine with one shot.In combination with hellions you will have no problem dealing with large groups of marines. Hellions perform great against large groups of opponent's units.
Countering mauraders is also straight forward by using banshees. Send that air strike and achieve a total dominance. Larger groups of marines will also do the trick, but remember to train a large group.
Hellions are weak against thors who wipe them out with their damage ability. Using tanks is also an obvious tactic - siege tank that is. Siege tanks may destroy up to 3-4 hellions. Using them in combination with banshees is also a good strategy.
Countering siege tanks is successful by using banshees and mauraders. Mauraders are cheap to build.
Vikings should be countered by an upgraded viking unit with help of a bunch of marines - numbers matter!
Banshees are weak against vikings and marines. Viking can bring a great amount of damage and is pretty useful for this matter.
Marines are also very useful against the thors. That may seem strange, but with a great number of cheap marines you may destroy thors, which will waste their firepower against marines while shooting one by one. Battlecruisers are another choice, but upgrade them first!