Depends on where you are arriving and which way you want to go. Larach is easily reached from either Ceuta or Tangier. Hotel Espana is a good bet. All night parking attendants on the street.
Inland Chefchaouen has lots of hotels including the upmarket Hotel Parador de Chaouen and the more modest Pension Pension Abie Khancha and Hotel Bab El Ain.
I've never pre-booked in Morocco and only got stuck once because the king was visiting.
See also the excellent thread on Morocco. Plenty of recommendations there. See also Lonely Planet and Rough Guide.
Great country. Enjoy it.
