Is there a suggestion for a public node?
Infura
Infura is a node api/gateway that is talked about very often (although I haven't used it myself yet so I can't give you my own experience). They also offer an IPFS querying service.
Ethereum Provider API
However, often times dapp developers don't interact with a node directly. Instead they interact with the Ethereum provider API.
When a website fetches a resource (some URL) in a browser, the web developer is not expected to find a DNS service that will convert those URLs to IP addresses. Instead the browser will have a built-in mechanism for resolving those IP addresses.
Simlarly, when a website needs to communicate with a blockchain, the dapp developer is not expected to find a node that will do this for them. Instead the browser will offer a built-in provider to fulfil/facilitate this communication.
This is what the Ethereum Provider API is. Similar to other web APIs, the Ethereum Provider API allows you to communicate with blockchains where the browser will do the hard work of finding a node to communicate with. Often times the browser user will also have control over what node they want to use, should they so wish.
Unfortunately, not many browsers implement this API. I believe (although I might be wrong) that the Brave browser natively supports this API along with ".eth" domains. For all other browsers, users will be required to install an extension which implements (injects) this API. The most common extension at the moment is MetaMask and is used by many (if not the majority) of dapp developers and users.
The MetaMask website offers great documentation for the Ethereum API and also offers an NPM package for detecting/retrieving this provider object. I believe none of this is specific to MetaMask but should work for all ethereum providers (including browsers that support it natively).
The Ethereum API offers many services including, but not limited to, sending transactions, calling contract functions, retrieving wallet addresses from the user, and signing transactions securely. You should check out this getting started guide.
can I assume it works the same in binance?
Unfortunately, I'm not sure if I understand what you mean by this question.
Are you referring to the Binance Smart Chain? If so, the ethereum API works with all EVM-compatible chains including the Binance Smart Chain. There are also methods for registering a chain and switching chain so that the user does not need to take these steps manually.
Or are you referring to integrating with the Binance app? If so, cryptocurrencies should be transferable between the Binance app and any dapp as long as you have a valid wallet set up.