1)
Delete dato senza parametri cancella un'intera tabella:
Connection.Delete(NomeTabella)
Per la cancellazione di un solo record, devi mettere i parametri nel comando Connection.Delete(), né più né meno di come faresti per una ricerca o un'edit. Quindi, per cancellare il record il cui campo ID, ad esempio, fosse 1234, basta dare:
Connesione.Delete(NomeTabella, "ID = &1", ValoreID)
Se invece vuoi ad esempio cancellare tutti i nominativi che si chiamano Rossi, dai:
Connessione.Delete(NomeTabella, "cognome = &1", "Rossi")
In pratica, Delete esegue una query filtrando i risultati con i parametri immessi, come se eseguissi un WHERE in SQL puro.
2)
I metodi di gestione dei record in Gambas puoi usarli insieme a query SQL. Io faccio così, infatti, utilizzando i primi per normali lavori di aggiunta, editazione e cancellazione di singoli record, mentre utilizzo l'SQL puro quando devo fare ricerche avanzate nel DB. Non c'è nessuna regola per cui devi usare o l'uno o l'altro: gli strumenti di un linguaggio sono lì apposta per aiutarti a raggiungere il tuo scopo ;-)