To answer this question, the user needs to know about the greatest swimmers in history and their achievements.
Option A: Johnny Weissmuller was a famous swimmer, but he is not considered the greatest swimmer of all time. He won five Olympic gold medals and set 67 world records but did not receive the awards mentioned in the question.
Option B: Michael Phelps is the most decorated Olympian of all time, with a total of 28 medals including 23 gold medals. He received the World Swimmer of the Year Award six times and the American Swimmer of the Year Award eight times, which matches the description given in the question.
Option C: Ian Thorpe, also known as the Thorpedo, is a retired Australian swimmer who won five Olympic gold medals and set 22 world records. However, he did not win as many Swimmer of the Year awards as mentioned in the question.
Option D: Mark Spitz is a retired American swimmer who won seven gold medals at the 1972 Munich Olympics. He also set multiple world records in his career, but he did not win as many Swimmer of the Year awards as mentioned in the question.
Therefore, the correct answer is:
The Answer is: B. Michael Phelps