Welcome to travel hacking. If your good with credit and pay your bill in full every month then Yes your can get a lot of free travel if you play the system. We haven't paid for a cruise with points but it can be done. We use our points for flights and hotels before and after cruises. Our main card that we use is the Chase Sapphire Reserve card, I got a pretty good point bonus when I signed up for it. The next card I use is Chase Hyatt card. I received 70,000 points when I signed up 4 years ago. The annual fee is $95 and you get 1 free night a year. With the Chase Sapphire care you can transfer those points to United airlines, Hyatt, Southwest Airlines and a couple of other company's at a value of 1 to 1.
There are a ton of people online offering advice but the one I found the most useful is 10Xtravel.com they have a free online course you can read that is very helpful plus they have a Facebook group too.