Hi Salman, Shoulder season from mid-April to May and September to mid-October seems to be the best time to visit Prague. Pack a warm jacket just in case and book your room couple of weeks in advance. Here are few suggestions created by real travelers on Tripoto. Please take a look. Thanks!
If you want to travel budget friendly, then Jan-March are the best months to visit Prague. It is the non touristy season and thus prices for everything are much lower