Not necessarily. Mempools don't have unlimited capacity and also there is transaction expired by timeout (by default 14 days after entering).
So in practice, if your transaction is not processed in 14 days, it will never be processed.
Maybe but it's not guaranteed. A node with longer timeout (or no timeout) can still keep your transaction and forward it to miners. There is nothing in the Bitcoin protocol related to timeout so a transaction after 14 day may or may not disappear from the mempools.