The release of selenium (Se) and chromium (Cr) into the environment from natural and anthropogenic sources threatens aquatic systems. These elements are redox active and their mobility and environmental impact depend strongly on their oxidation state. The most prevalent oxidation states of selenium in aqueous systems are SeIV and SeVI, while CrVI (chromate) is the most common form of chromium, a carcinogen. For this work, the removal of selenium and chromium was investigated by a combination of sorption (abiotic) and microbial processes. Two separate zeolite columns were used for the bioreduction of selenite and selenate oxyanions. Anaerobic sludge was used as an anaerobic microbial inoculum for the zeolite columns, while lactate served as an electron donor. The initial selenium concentration (SeIV or SeVI) was 790 ppb, and the residence time of zeolite biofilters was 100 minutes. Regardless of selenium speciation, maximum selenium removal was 99%. Based on 16S rRNA sequencing, Veillonella, Bacteroides, and Escherichia were the most dominant selenium-reducers in biofilm communities. For chromium removal, modified biochar and unmodified biochar with particle sizes ranging from 300 µm to 500 µm were used as adsorbents in kinetic experiments. For initial chromium (VI) concentration of 250 ppb, 0.01 M NaNO3 ionic strength, and adsorbent concentration of 5 g/L, chromium (VI) removal by iron-coated biochar was 99.8% after reaching equilibrium in 24 hours. Chromate removal by unmodified biochar and equilibration time of 5 days was 95%. Compared to unmodified biochar, iron-modified biochar has a higher potential to remove chromium (VI).