N before labials
In English, /n/ may be realized phonetically as [m] (or a similar phone? perhaps [n͡m]) before /p/ or /b/, as in the words "inborn" or "unprovoked", but this is described by some sources as a "gradient*" or "partial" phenomenon rather than a categorical assimilation. This seems to constitute a difference between English and Spanish.
*(Greg Lee seemed to disagree with the use of the word "gradient" to describe this phenomenon when I used that word in another answer, but nevertheless, it seems to be used in the literature. The main point is that it the phenomenon is variable and doesn't constitute a complete phonological neutralization of /n/ with /m/ in this context, or a completely identical phonetic realization of /n/ and /m/ in this context.)
I think it should be distinguished from the categorical alternation between /n/ and /m/ in the negative prefix "in-"/"im-" that occurs in Latinate words like "impossible". As far as I know, English speakers never use partially assimilated pronunciations like [nn͡mp] in words like "impossible" (although "nc" in Latinate words may be pronounced as either /nk/ or /ŋk/ based on somewhat variable and complicated factors).
It may be the result of "gestural overlap"
The English phenomenon is often considered to be the result of "gestural overlap" and co-articulation. There seems to be a relevant passage in the Blackwell Companion to Phonology. That said, there doesn't appear to be absolute consensus on the "gestural overlap" explanation; some phonologists may have other analyses.
Similar phenomena
Another similar phenomenon is the realization of non-nasal coronals like /t/ and /d/ as something like [p] or [b] before bilabial plosives.
Likewise, /n/ may become more like [ŋ] before a velar plosive, more like [ɱ] before a labiodental fricative, and more like [n̪] before a dental fricative. I don't remember if there are any significant differences in behavior based on the POA of the following consonant; e.g. if the realization of /n/ as [n̪] or [ɱ] is less variable than the realization of /n/ as [m] or [ŋ].
My understanding is that some languages (if I remember correctly, certain Australian languages), are even less permissive of this kind of "assimilation" than English. But I'm not sure. I found a paper that describes a similar kind of "gradient" assimilation in French: Gradient assimilation in French cross-word nasal+stop sequences (Laura Colantoni, Alexei Kochetov and Jeffrey Steele)