Why does the printer ask for all colours to be in CMYK, cant you sometimes send them as RGB like when you might print them from an office printer?
Its a question of precision. The color systems have a different color range, known as gamut. If nothing else there is how to handle black. You could send RGB if random results, unpredictable at best, are acceptable to you.
Its just that people tend to get a bit pedantic about these things when they have to pay for the result. If you dont care, then yes you can let somebody else do the conversion for you. But dont blame your printer if you do.
The quick answer. RGB=displays. CMYK=Ink. Although many printers will accept files that are RGB, they can't guarantee the colors will produce as you might expect. These days RGB images translate pretty close but there are big difference in some images, especially it comes to vibrance. RGB has a much wider color range that CMYK can't produce. As mentioned by joojaa, random results are usually unacceptable, especially when someone is paying you for an expected result.