A formal language is simply a recursively defined statement-set, where a 'statement' is defined as any string of symbols that is either true or false. A set K is recursively defined if it is the closure of some element alpha under some function phi, meaning that alpha belongs to K and phi(x) belongs to K whenever x belongs to K, and nothing else belongs to K. (For example, the natural numbers--i.e. 0, 1, 2, 3,...--is the closure of 0 under +1.)
Any given natural language (e.g. English, Spanish, Arabic) is a formal language.
Natural languages are formal languages that we did not invent, and so-called 'formal languages' are formal languages that we did invent.
But any given formal language could in principle be a natural language and vice versa. When we describe a language as 'natural' or as 'formal', we are making a statement about its mode of origination, not about its structure.
This is subject to one rather subtle qualification, namely, that what we refer to as 'a natural language' is really an evolving series of distinct languages, whereas what we refer to as 'a formal language' is indeed just one language.