How to clean glass (windows etc…) without streaking?

I generally use glass cleaner (windex) and paper towels to clean windows and mirrors in my house. It seems that no matter the brand of either paper towel or cleaner I am left with streaks.

Any suggestions?