When lenders offer a "no-cost" loan, they may include a prepayment penalty to discourage you from refinancing within the first few years of the loan. Ask the lender offering a no-cost loan to explain all the fees and penalties before you agree to these terms.
If you know that you will be moving in 3 to 5 years, you might want to consider refinancing to a 3 or 5 year ARM (adjustable rate mortgage). These loans typically have a much lower rate that a traditional fixed rate loan such as a 30 year fixed, but they do have a fixed rate for the first 3 or 5 years of the loan. This will enable you to benefit from the lower rate, but you won't ever have to worry about the risk of a rate adjustment because you will be selling the home before the fixed-rate period ends.
You can also save money on your mortgage refinancing by paying "points." This is a fee that effectively lowers the interest rate of your loan. If you plan on staying in your home for a long time, this long-term strategy can be an excellent way to save thousands of dollars.
If you are able to get a lower rate that what you currently have, you can save tens of thousands of dollars over the life of your loan. Also, most lenders don't charge as many fees to refinance a mortgage and depending on how much equity you have in your home you may be able to roll the closing costs into your new loan, still have a lower balance than your original loan, a lower rate, and a lower payment.