Thanks @Baozhu, for performance and functionality, you are absolutely correct! That looks brilliant, but unfortunately my project is miniature, so the XIAO is the board I will have to use. I already have it all up and running with analog audio, I would just rather switch to digital I2S, if possible.
I have done as much research as I can and I now have I2S enabled, pins allocated correctly and the example sketch in Arduino IDE running fine, but get nothing back from the mic. I have amended variant.h, tried changing SERCOM and the I2S library, but am way out of my depth now.
I think it probably needs someone cleverer than me to make a new I2S library that works with this board. Unless, of course, it is not possible with this hardware…