Qelqatani Hotel: first-rate hotel in Puno
In all honesty, Puno would not be my first choice as a place to stay for a long time; there are more beautiful Lake Titicaca shoreline towns than Puno. Still, this city seems to be a popular crossroad and stopover destination before going on the the islands or Bolivia.
The Qelqatani Hotel is a great hotel with service+++, good food, accommodations and a super friendly staff.
Sure, you could stay in an $8-15 a night hostal in Puno, but if you want a little luxury, try the Qelqatani.