Dividiendo una cadena en C #

Estoy tratando de dividir una cadena en C # de la siguiente manera:

La cadena entrante está en el formulario

string str = "[message details in here][another message here]/n/n[anothermessage here]"

Y estoy tratando de dividirlo en una serie de cadenas en la forma

string[0] = "[message details in here]"
string[1] = "[another message here]"
string[2] = "[anothermessage here]"

Estaba tratando de hacerlo de una manera como esta

string[] split =  Regex.Split(str, @"\[[^[]+\]");

Pero no funciona correctamente de esta manera, solo obtengo una matriz o cadenas vacías

¡Cualquier ayuda sería apreciada!

Respuestas a la pregunta(4)

Su respuesta a la pregunta