If you want roms, devmenu and CIA you need a 3DS on firmware 4.1-4.5 and a Gateway 3DS card. But you can't have a flash card that can play 3DS roms and NDS roms unfortunately. This is because booting NDS roms breaks the method the current 4.5 flashcards use to exploit the system. If you want to use NDS software you need to reinstall the exploit after.
If you want highest firmware support you need a SKY3DS, but you can't have devmenu and CIA. You could also wait for Gateway 3DS to support highest firmware which is apparently "coming soon"
EDIT: Whoops, i overlooked the part where he/she said 2DS. Ignore this post.